[leetcode]Pow(x, n)&&Sqrt(x)
来源:互联网 发布:focusky软件下载 编辑:程序博客网 时间:2024/04/29 06:00
Pow(x,n) 求x的n次方。需要用到分治法,x^n = x^n/2 * x^n/2 *x^n%2
代码如下:
class Solution {public: double pow(double x, int n) { if(n>=0){ return recurse_pow(x,n); } else if(n<0){ return 1.0/recurse_pow(x,-n); } } double recurse_pow(double x,int n){ if(n==0){ return 1.0; } double m=recurse_pow(x,n/2); if(n%2==0){ return m*m; } else{ return m*m*x; } }};
sqrt(x) 求x的近似平方根 使用二分查找法 left=1,right=x/2
代码如下:
class Solution {public: int sqrt(int x) { int left=1; int right=x/2; int mid,ret=0; if(x<2){ return x; } while(left<=right){ mid=(left+right)/2; if(x/mid>mid){ left=mid+1; ret=mid; } else if(x/mid<mid){ right=mid-1; } else{ return mid; } } return ret; }};
0 0
- [leetcode]Pow(x, n)&&Sqrt(x)
- Leetcode的Pow(x, n) 与 sqrt(x)
- Leetcode 50. Pow(x, n) & 69. Sqrt(x)
- LeetCode.50(69) Pow(x,n)&&Sqrt(x)
- LeetCode: Pow(x, n)
- LeetCode Pow(x,n)
- [Leetcode] Pow(x, n)
- LeetCode: Pow(x, n)
- Leetcode: Pow(x,n)
- [LeetCode] Pow(x, n)
- [Leetcode] Pow(x,n)
- 【leetcode】Pow(x, n)
- [LeetCode]Pow(x, n)
- [leetcode]Pow(x, n)
- LeetCode-Pow(x, n)
- LeetCode - Pow(x, n)
- LeetCode | Pow(x, n)
- Pow(x, n) -leetcode
- Activity的四种launchMode
- 2014.5.20-5.21
- 各位兄弟,看完之后好歹评论下
- 【leetcode】Distinct Subsequences
- leetcde: Best Time to Buy and Sell Stock II
- [leetcode]Pow(x, n)&&Sqrt(x)
- oracle数据库管理---- 管理表空间和数据文件
- git恢复被修改的文件
- 驱动开发要诀
- ExtensionMacros
- 十五 oracle约束
- 简单的c语言题目
- OpenCV中的HOG+SVM物体分类
- spring经常需要的xml和xml schema 地址