给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
注意若指数为负,需要先进行转换。套用快速幂
1 class Solution { 2 public: 3 double Power(double base, int exponent) { 4 double res=1.0; 5 if(base==1||exponent==0) return 1; 6 if(base==0) return 0; 7 if(exponent<0) base=1/base; 8 exponent=abs(exponent); 9 while(exponent!=0){ 10 if(exponent%2==1) res=res*base; 11 base=base*base; 12 exponent=exponent/2; 13 } 14 return res; 15 16 } 17 };