class Solution {
public:
//加深了对快速幂的理解和认识
double myPow(double x, int n) {
if(n==0) return (double)1;
double y=1;
long int t=(long)n; //1.00000 -2147483648这个测试用例使得需要long
x=(n>0?x:(t=-t,1/x));
while(t!=0){
if(t&1) y*=x;
t>>=1;
x*=x;
}
return y;
}
};
快速幂&&剑指 Offer 16. 数值的整数次方
最新推荐文章于 2024-09-30 23:49:04 发布