剑指offer第十二题【数值的整数次方】c++实现

来源:互联网 发布:核工业湖州勘察院 知乎 编辑:程序博客网 时间:2024/06/05 07:13
数值的整数次方
  • 参与人数:2920时间限制:1秒空间限制:32768K
  • 通过比例:25.37%
  • 最佳记录:0 ms|8552K(来自  ccnew)

题目描述

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

这道题指数不会大,直接for循环也能做,但我习惯性用快速幂去做

本题就是指数可能为负的,取倒数就可以了。

    double Power(double base, int exponent) {        bool flag=false;        if(exponent<0){            exponent=-exponent;            flag=true;        }        double res=1;        while(exponent>0){            if(exponent&1){                res*=base;            }            base*=base;            exponent>>=1;        }        if(flag==true){            return 1/res;        }        return res;    }


0 0
原创粉丝点击