题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 保证base和exponent不同时为0
思想:
主要是这个正数exponent有正负两种可能
方法一: 简单版-有作弊嫌疑,用了库函数--时间复杂度O(N)
代码语言:javascript复制 public double Power(double base, int exponent) {
double result=1;
for(int i=0;i<Math.abs(exponent);i ){
result*=base;
}
if(exponent<0){
result=1/result;
}
return result;
}
方法二 :
代码语言:javascript复制public static double Power(double base, int exponent) {
double res = 1.0;
if (base == 0)
return 0;
if (exponent == 0)
return 1;
if (exponent < 0)
base = 1.0 / base;
while (exponent!=0){
res *= base;
exponent = (exponent>0) ? (--exponent) : ( exponent);
}
return res;
}