題目描述
給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。
全面考慮問題:
1、base==0或base!=0
2、exponent>0或exponent==0或exponent<0
優化:
notice:exponent>>1
和exponent & 0x1 == 1
判斷是否為奇數
自己實現版本:
//優化到時間複雜度o(logn)
//a^n=n為偶數,a^(n/2)*a^(n/2)
//a^n=n為奇數,a^(n-1/2)*a^(n-1/2)*a
double powwithpos(double base, unsigned
intexp)
else
}
劍指Offer 11 數值的整數次方
1 浮點數的比較不能直接用 精度問題 2 的魯棒性,考慮非正常情況 3 0的0次方 1 4 unsigned int,計算機中數字都用補碼表示 5 移位運算 6 遞迴演算法 include using namespace std class solution unsigned int ab pone...
劍指offer 11 數值的整數次方
package offer 求數值的整數次方 需要考慮全面 1 0為底時負數次冪無意義,0為指數值為 1,1為指數值為其本身 2 指數為負數時,注意為倒數 3 計算機中判斷相等時考慮精度的問題,自己定義 equals方法 auther dennis date 2018 4 15 public cla...
劍指offer 數值的整數次方
1 題目描述 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。2 思路 需要考慮到的情況 1 指數為負數的時候,可以先對指數求絕對值,算出次方之後的結果再取倒數。2 當底數是0,指數是負數的時候,可以將無效變數設定為true,並返回0。3...