题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
快速幂,注意exponent为负数的情况
class Solution {
public:
double q_pow(double a, int b) {
double ans = 1.0;
while(b) {
if(b&1) ans = ans*a;
a *= a;
b >>= 1;
}
return ans;
}
double Power(double a, int b) {
if(b < 0) {
return 1.0/q_pow(a, -b);
}
return q_pow(a, b);
}
};