题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
思路:一个一个相乘就好了,没有想出别的很好的方法来,注意base为0和负数的情况。
C/C++代码:
class Solution
{
public:
double Power(double base, int exponent)
{
if(exponent > 0)
{
double *record = new double[exponent + 1];
record[0] = 1;
for(int i = 1; i <= exponent; i++)
{
record[i] = record[i - 1] * base;
}
return record[exponent];
}
else
{
exponent = 0 - exponent;
base = 1 / base;
double *record = new double[exponent + 1];
record[0] = 1;
for(int i = 1; i <= exponent; i++)
{
record[i] = record[i - 1] * base;
}
return record[exponent];
}
}
};