给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
分析:
还是那句老话,算法的本质就是模拟数学规律,我们可以先模拟一下幂运算就是乘法的连乘,那么用算法写出来,然后再考虑几个测试用例的极端情况,如exponent==0或者exponent<0的情况,然后按逻辑写出你的代码就好了,不要把他想的有多难,羞愧是负能量最高的能量场。(有人在解析中写的,这里也提醒自己 加油)
public class Solution {
public double Power(double base, int exponent)
{
if(exponent==0)
return 1;
double a=base;
if(exponent<0)
{
exponent=exponent*-1;
for(int i=1;i<exponent;i++)
{
a*=base;
}
return 1/a;
}
for(int i=1;i<exponent;i++)
{
a*=base;
}
return a;
}
}原文:http://zhenzhuangde.blog.51cto.com/10697385/1729768