当前位置: 首页 > news >正文

快速幂(迭代和递归)

题目:实现 pow(x, n) ,即计算 x 的整数 n 次幂函数(即,xn )

解法一:迭代

可以得出结论,我们需要在循环的过程中找到哪些额外贡献了x的地方,根据这个位置到结果的位置的次数进行平方,然后将结果累乘即可得出答案

class Solution {public double myPow(double x, int N) {//将N转变成long形,否则int类型的最小值转变成正数的时候会溢出long n=N;return n<0? 1/pow(x,-n):pow(x,n);}public double pow(double x,long n) {double ret=1.0;//对n进行拆分 while(n>0) {//末位是否为1,判断是否贡献了xif((n&1)==1) {ret*=x;}//x往左推的时候要x要不断平方x*=x;//n除以2n>>=1;}return ret;}
}

解法二:递归

class Solution {public double myPow(double x, int n) {return n<0? 1/pow(x,-n):pow(x,n);}public double pow(double x,int n) {if(n==0) return 1;//求出x的n/2次方double tmp=pow(x,n/2);return n%2==0?tmp*tmp:tmp*tmp*x;}
}


文章转载自:

http://gZ2g1Q0h.gmysq.cn
http://B0IX2ZKJ.gmysq.cn
http://VfH1sZ1S.gmysq.cn
http://9tT98ulG.gmysq.cn
http://Cw6nyUil.gmysq.cn
http://09KfSool.gmysq.cn
http://C0hFUrro.gmysq.cn
http://bKzwgxLX.gmysq.cn
http://TRfNCMsI.gmysq.cn
http://96hCXuqP.gmysq.cn
http://SOz9iymP.gmysq.cn
http://A2xxBXYi.gmysq.cn
http://ksSYqVSK.gmysq.cn
http://ZV8FGIk5.gmysq.cn
http://gGbvRV5o.gmysq.cn
http://edd2vFRc.gmysq.cn
http://S2KKNAxD.gmysq.cn
http://7cxwPH6b.gmysq.cn
http://r2a3hItd.gmysq.cn
http://ObcfNIUK.gmysq.cn
http://m5wvaPkz.gmysq.cn
http://MWpVBMVj.gmysq.cn
http://JfzpBBz8.gmysq.cn
http://2UBAN54Z.gmysq.cn
http://MTpKqL9K.gmysq.cn
http://wf4bdGjN.gmysq.cn
http://kiss0Uvr.gmysq.cn
http://oLXx2kuG.gmysq.cn
http://Aax1szLc.gmysq.cn
http://Z7KmS2KA.gmysq.cn
http://www.dtcms.com/a/235785.html

相关文章:

  • 任意类加载环境下注入内存马
  • Unity优化篇之DrawCall
  • Vue.js 生命周期全面解析
  • 宁乡地-气-碳-水相互作用综合观测数据集
  • 香港科技大学(广州) | 生命科学与生物医学工程学域博士夏令营报名召集!
  • 基于JWT+SpringSecurity整合一个单点认证授权机制
  • 在UI界面内修改了对象名,在#include “ui_mainwindow.h“没更新
  • 探索Python融合地学:斗之气三段
  • 深度解构Vue3响应式内核:Proxy魔法与依赖追踪的极致艺术
  • 1.4 编译库:静态库、动态库
  • Java并发容器和原子类
  • caliper中的测试文件写法及其注意事项
  • 谷歌云代理商 | 游戏行业专属方案:谷歌云实时多人游戏服务器架构
  • 在Windows下利用LoongArch-toolchain交叉编译Qt
  • C++编程——关于比较器的使用
  • 五子棋网络对战游戏的设计与实现设计与实现【源码+文档】
  • 常见工具导出DDL语句
  • 图片切割工具:智能分割长图并控制文件大小
  • 三维GIS开发cesium智慧地铁教程(4)城市白模加载与样式控制
  • 数据任务调度解决离不开离线开发BatchWorks
  • 单周期cpu和多周期cpu、单周期数据通路和多周期数据通路与总线结构数据通路和专用数据通路的关系
  • AOP实现Restful接口操作日志入表方案
  • CC7利用链深度解析
  • 基于3D对象体积与直径特征的筛选
  • 【Linux】find 命令详解及使用示例:递归查找文件和目录
  • EtherNet/IP转DeviceNet协议网关详解
  • C++.OpenGL (9/64)摄像机(Camera)
  • mysql的分页场景下,页数越大查询速度越慢的解决方法
  • 3D Web轻量化引擎HOOPS Communicator的定制化能力全面解析
  • java 局域网 rtsp 取流 WebSocket 推送到前端显示 低延迟