troubleasy

导航

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

保证base和exponent不同时为0
思路:快速幂算法
总结的很全面的blog:作者:刘杨俊 https://blog.csdn.net/qq_19782019/article/details/85621386
    double Power(double base, int exponent) {
    //底数是否为0,指数正负
        double res=1,b=base;
        int ex=abs(exponent);
        while(ex)
        {
            if(ex&1)
            {
                res=res*b;
            }
            b=b*b;
            ex>>=1;
        }
        return exponent>0?res:1.0/res;
    }
posted on 2020-05-26 01:22  troubleasy  阅读(77)  评论(0编辑  收藏  举报