题解 | #数值的整数次方#
数值的整数次方
https://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00
class Solution {
public:
double Power(double base, int exponent) {
if (abs(base)<=0.000000000001)return 0.0;
if (exponent == 0) return 1.0;
if (exponent == -1) return static_cast<double>(1)/base;
if (exponent == 1) return base;
double tmp = Power(base, exponent/2);
if (exponent&1 )
{
return tmp*tmp*(exponent > 0? base : static_cast<double>(1)/base);
}else {
return tmp*tmp;
}
}
};