0
点赞
收藏
分享

微信扫一扫

LeetCode-050-Pow(x, n)

楚木巽 2021-09-28 阅读 62
LeetCode

Pow(x, n)

解法一:递乘/递除法
解法二:调用库函数
public class LeetCode_050 {
    /**
     * 方法一:递乘/递除
     *
     * @param x
     * @param n
     * @return
     */
    public static double myPow(double x, int n) {
        if (x == 1) {
            return 1;
        }
        double result = x;
        if (n == 0) {
            result = 1;
        } else if (n > 0) {
            for (int i = 1; i < n; i++) {
                result *= x;
            }
        } else {
            n = Math.abs(n);
            result = 1;
            for (int i = 0; i < n; i++) {
                result /= x;
                if (result < Double.MIN_VALUE) {
                    return 0;
                }
            }
        }
        return result;
    }

    /**
     * 方法二:调用库函数
     *
     * @param x
     * @param n
     * @return
     */
    public static double myPow2(double x, int n) {
        return Math.pow(x, n);
    }

    public static void main(String[] args) {
        System.out.println(myPow(2.0000, -48));
    }
}
举报

相关推荐

0 条评论