2021-07-13 数值的整数次方
2021-07-13 本文已影响0人
hlchengzi
快速降幂法
public class Solution {
public double Power(double base, int exponent) {
if(exponent == 0){
return 1.0;
}
if(exponent == 1){
return base;
}
if(exponent == -1){
return 1/base;
}
int origin = exponent;
if(exponent<0){
exponent*=-1;
}
double before = 1;
if(exponent%2 == 1){
before *= base;
}
double result = base;
while(exponent>1){
exponent /=2;
result = result*result;
}
return origin>0?before*result:1/(before*result);
}
}