leetcoder-50-Pow(x, n)
来源:互联网 发布:php-ml 中文分词算法 编辑:程序博客网 时间:2024/05/20 18:02
Pow(x, n)
可以直接用库函数pow(x,n)一步搞定,但明显这样就没意思了。 参考 快 速 幂 取 模
二分,复杂度为O(logn)
递归方法
class Solution {public: double myPow(double x, int n) { if(n<0) return 1.0/myPow_1(x,-n); else return myPow_1(x,n); } double myPow_1(double x,int n) { if(n==0) return 1.0; double y=myPow_1(x,n/2); // 不能用n>>1 T_T 不知道什么原因 if(n&1) return y*y*x; else return y*y; }};
位运算
class Solution {public: double myPow(double x, int n) { if(n<0){ n=-n; x=1.0/x; } double ans=1; while(n){ if(n&1) ans=ans*x; x=x*x; n=n/2; } return ans; }};
0 0
- leetcoder-50-Pow(x, n)
- 50、Pow(x, n)
- 50 Pow(x, n)
- 50 Pow(x, n)
- 50Pow(x, n)
- [50]Pow(x, n)
- 50、Pow(x, n)
- 50 - Pow(x, n)
- 50Pow(x, n)
- 50 Pow(x, n)
- 50-pow(x,n)
- leetcode 50 : Pow(x, n)
- LeetCode 50: Pow(x, n)
- [leetcode 50] Pow(x, n)
- [Leetcode] 50 - Pow(x, n)
- [LeetCode 50]Pow(x, n)
- leetcode 50 Pow(x, n)
- leetcode || 50、Pow(x, n)
- Chrome Dev Tool 中时间线各阶段代表的意义
- 安卓启动一个程序的代码
- smack on android SSL设置记录之学习用keytool生成证书
- JavaScript编码规范-Baidu
- 2012年5月SAT香港真题解析
- leetcoder-50-Pow(x, n)
- MySQL与Oracle 差异比较之数据类型比较
- 内存对齐
- 6.2-1
- 菜鸟学Android笔记(四十七):自定义标签开发案例及打包
- 转载Mysql的乱码问题
- 关于心理的二十五种倾向(查理·芒格)-1
- Java项目迁移中的问题
- GRE写作必备句型