//一个数不断进行位运算,最后一次肯定是变成1
//想一想,一个数的二进制首位肯定是1,最后肯定这个1来到那个位置
while(exponent!=0){
//位运算没有达到最后一步
if((exponent==1)
//到了最后一步
res*=curr;
curr*=curr;
exponent>>1;
}
//最后判断n是否大于0,小于0是当分母
return n>=0?res:(1/res)
不用幂函数,实现数值的n次方
最新推荐文章于 2021-11-24 18:34:25 发布