題目描述
給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。
注意要考慮全面,若exponent是0,是負數怎麼辦
1.效率低
public
class
solution
}else
result =
1.0/ result;
}return result;
}}
2.若輸入的指數exponent為32,則可以求出16次方後,在16次方的基礎上再平方一次就可以了。這樣可以大大提高效率。
求a的n次方公式如下:
因 位運算的效率 比 乘除法及求餘運算 的效率高很多,故:
用右移運算子代替了除以2
用位與運算子代替了求餘運算子(%)來判斷乙個數是奇數還是偶數
public
class
solution
}
注意這是在正數的前提下。 12 數值的整數次方(劍指offer)
12.數值的整數次方 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。1.思路 double型別精度更高,不懂的先簡單理解為小數,int為整數。比如題目,double乙個 1.52,int乙個 2.要求 1.52 2 當指數為負數的時候,...
12 劍指offer 數值的整數次方
題目描述 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。解題思路 首先要注意特殊情況的處理 base為0情況 exponent為0 為1情況 exponent為負數情況 1 include 2 using namespace std 3...
劍指Offer (12)數值的整數次方
題目描述 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。實現如下 方法一 迴圈 此題不需要考慮計算後值溢位的情況,即不存在大數情況 異常情況 底數為0時 0.0 指數為0時 1.0 數學定義 指數為負數時,需要考慮先計算指數絕對值的結果...