LeetCode 50 实现一个pow(x,n) x的n次幂

179 阅读1分钟

LeetCode 50 实现一个pow(x,n) x的n次幂

题目描述:

实现 pow(x, n) ,即计算 x 的 n 次幂函数(即,xn)。
示例 1:

输入:x = 2.00000, n = 10
输出:1024.00000
示例 2:

输入:x = 2.10000, n = 3
输出:9.26100

代码:

class Solution {
    public double myPow(double x, int n) {
       // 三个特殊n值的判断
       if (n == 0)  { return 1; }
       if (n == 1)  { return x; }
       if (n == -1) {return 1/x; }
       double half = myPow(x,n/2);
       double res = myPow(x,n%2);
       return half*half*res;
    }
}

image.png