数值的整数次方

题目描述

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

保证base和exponent不同时为0

思路

  1. 参见下图的快速幂公式,递归求解即可。

Java代码实现

    public double Power(double base, int exponent) {
        if(exponent == 0)
            return 1;
        if(exponent == 1)
            return base;
        double half = Power(base,Math.abs(exponent)/2);
        double res = 0;
        if(exponent % 2 == 0)
            res = half*half;
        else
            res = half*half*base;
        return exponent > 0 ? res : 1/res;
    }
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务