剑指offer_【12】数值的整数次方

1.题目描述

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方

2.解题思路

  • (1)exponent > 0,如2^3,则可以直接运算得出结果

  • (2)exponent < 0,如2^-3,则结果为(1/2)^3

  • (3)exponent = 0,如2^0,则结果为1

3.代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class Solution {
public double Power(double base, int exponent) {

if(exponent<0){
return powCal(1.0/base,-1*exponent);
}else if(exponent>0){
return powCal(base,exponent);
}else{
return 1;
}
}
//计算base的exponent次方

public double powCal(double base, int exponent) {
double res = 1;
for(int i = 0;i<exponent;i++){
res = res*base;
}
return res;
}
}
文章目录
  1. 1. 1.题目描述
  2. 2. 2.解题思路
  3. 3. 3.代码
| 139.6k