数值的整数方次 - Java
题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0
示例1
输入
2,3
返回值
8.00000
思路:
解题方法就是很简单的累乘(数学算法),但是需要注意指数有可能是负数,也有可能是0;
实现Implementation
public class Solution {
public double Power(double base, int exponent) {
if(base == 0.0){ //基数为0无意义
return 0.0;
}
double result = 1.0d; //前置结果,初始值为1.0是exponent为0的结果
int e = exponent > 0 ? exponent : -exponent; //取绝对值
for(int i =1;i<=e;i++){ //累乘
result *= base;
}
return exponent > 0 ? result : 1/result; //指数有可能为负
}
}