标签:leetcode
Pow(x, n)
可以直接用库函数pow(x,n)一步搞定,但明显这样就没意思了。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; } };
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:leetcode
原文地址:http://blog.csdn.net/u014705854/article/details/46815453