這是我實施的電源方法。RunTime我的電源方法的複雜性
- 如果電源是偶數,我方形基部,和劃分 功率除以2
如果電源是奇數,我遞歸運行的方法,用 功率減小減1,以得到偶數,然後乘以基數得到的結果,以計算減1的功率。
基本情況達到時,功率爲1,結果爲0。
我的問題是,什麼是這種方法的時間複雜度?因爲,我們在每次迭代中將權力除以2,是否記錄到基數2?
double myPow(double base, int pow) {
if(pow == 0)
return 1;
if(pow < 0)
return 1/base * 1/myPow(base, (pow*-1)-1);
if(pow %2 == 1)
return base * myPow(base, pow-1);
else
return myPow(base*base, pow/2);
}
是的,你是對的 – sunkuet02