NO12、数值的整数次方(快速幂解法很棒、很好)

12、数值的整数次方 快速幂很好

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

保证base和exponent不同时为0
示例1
输入

2,3

返回值

8.00000
1、主要要注意正负数的情况,要注意分开

运行时间:3ms 占用内存:520k

double Power(double base, int exponent) {
        if( exponent == 0) return 1.0;
        if( base == 0.0 ) return 0.0;//保证不同时为0,先处理各自为0的情况

        bool flag = false;//判断指数是否为负
        if( exponent < 0) {
            flag = true;
            exponent *=-1;//如果为负数,则将指数转正
        }
        double res = base; 
        for(int i = 2;i <= exponent; ++i){
            res *=base;//逐渐递乘
        }

        if(flag) return 1.0/res;
        else
       

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

带你刷完67道剑指offer 文章被收录于专栏

- 本专栏汇集了67道剑指offer的一些精妙解法,不少题有5-6种解法之多,有些题目二刷三刷的解法也不一样。 - 本专栏帮助我拿到6个互联网大厂offer,最终圆梦字节跳动公司。

全部评论

相关推荐

06-26 22:20
门头沟学院 Java
码农索隆:让你把简历发给她,她说一些套话,然后让你加一个人,说这个人给你改简历,然后开始卖课
我的求职精神状态
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务