12數值的整數次方 劍指offer,java版

2021-09-11 22:13:44 字數 605 閱讀 8393

題目描述

給定乙個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 數學定義 指數為負數時,需要考慮先計算指數絕對值的結果...