您的位置:首页 > 编程语言 > C语言/C++

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

2015-10-15 08:11 369 查看
数值的整数次方

参与人数: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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言 剑指offer 算法