Leetcode NO.50 Pow(x, n)
来源:互联网 发布:电脑语音同声翻译软件 编辑:程序博客网 时间:2024/06/18 15:01
本题要求如下:
Implement pow(x, n).
就是实现C++自带的pow()函数,极其简单,就是用recursive的方法:pow(x,n) = pow(x*x, n/2)这样下来,当然有些情况(n的奇偶,正负),时间复杂度就是O(logN)。
代码如下:
class Solution {public: double pow(double x, int n) { if (n > 0) { if (n % 2 == 0) return pow(x*x, n/2); else return x * pow(x*x, n/2); } else if (n == 0) return 1; else { if (n % 2 == 0) return 1.0 / pow(x*x, -n/2); else return 1.0 / (x * pow(x*x, -(n+1)/2)); } }};唯一需要注意的就是在n = INT_MIN的时候。
0 0
- Leetcode NO.50 Pow(x, n)
- Leetcode No.50: Pow(x, n)
- LeetCode No.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)
- [leetcode] #50 Pow(x,n)
- LeetCode-50 Pow(x, n)
- Pow(x, n) - LeetCode 50
- 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 NO.60 Permutation Sequence
- 排序算法(一)- 冒泡排序
- 排序算法(二)- 快速排序
- 安装 CentOS 7 后必做的七件事
- Step by Step Ubuntu下GPU测试Theano
- Leetcode NO.50 Pow(x, n)
- 使用nat123来用外网访问内网SVN-https443映射方法
- asp.net,jsp,php,安卓Android,ios计算机毕业课程设计源码免费打包下载
- Xsolla对话成都游戏茶馆CEO
- Android入门第八篇之GridView(九宫图)
- Natural Language Processing (nlp) 路线图
- BZOJ 2982 combination Lucas定理
- iOS strong 和weak的形象理解(真的很精典!)
- strong和weak的区别