leetcode #50 in cpp
来源:互联网 发布:联想网络销售授权店 编辑:程序博客网 时间:2024/05/22 06:37
Implement pow(x, n).
Solution:
Brute force method is to have x^n = x*x*.....*x.
We use divide and conquer method pow(x,n) = pow(x,n/2)^2 if n is even or pow(x,n) = x*pow(x,n-1) if n is odd.
Code:
class Solution {public: double myPow(double x, int n) { if(x==1 || x==0) return x; if(x==-1) return n%2?-1:1; if(n==1) return x; if(n==0) return 1; if(n==INT_MIN || n == INT_MAX || x == INT_MIN || x==INT_MAX ) return 0.0; if(n < 0){ return 1/pow(x,-n); }else{ return pow(x,n); } } double pow(double x, int n){ if(n==1){ return x; } //if(n==0) return 1; if(n%2){//odd number return x*myPow(x,n-1); }else{//even number double temp = myPow(x,n/2); return temp*temp; } }};
0 0
- leetcode #50 in cpp
- leetcode #12 in cpp
- Leetcode #13 in cpp
- Leetcode #14 in cpp
- leetcode %15 in cpp
- leetcode #16 in cpp
- leetcode #17 in cpp
- leetcode #18 in cpp
- leetcode #20 in cpp
- leetcode #21 in cpp
- leetcode #22 in cpp
- leetcode #23 in cpp
- leetcode #24 in cpp
- leetcode #25 in cpp
- leetcode #26 in cpp
- leetcode #27 in cpp
- leetcode #28 in cpp
- leetcode #29 in cpp
- Linux---够开发过程中使用的Vim命令
- VC启动窗口画面制作方法研究
- leetcode #49 in cpp
- 如何安装和使用Alcatraz
- 单例设计模式
- leetcode #50 in cpp
- 微软亚洲研究院比赛记:hackathon! MPC,Fight!
- 自旋锁的故事
- WebCollector 2.x 教程列表
- SparkStreaming---wordCount源码解读
- log4cxx
- jquery zclip 复制插件的使用
- c 字符串分割函数
- method to The entitlements specified in your application’s Code Signing Entitlements file do not mat