題目描述:
給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。實現如下:
//方法一:迴圈
//此題不需要考慮計算後值溢位的情況,即不存在大數情況
//異常情況:
//底數為0時->0.0
//指數為0時->1.0(數學定義)
//指數為負數時,需要考慮先計算指數絕對值的結果,再取倒數
class solution
if (exponent < 0) res = 1.0 / res;//exp為負數時,取res的倒數
return res;
}};//方法二:遞迴
//計算的指數若為n,則只需計算指數為(n/2)時的值,用這個值再平方就可以得到指數為n的值
//注意:
//n為奇數時。需要再乘以乙個base,因為(n/2)向下取整
//exponent還是先計算為正數的情況,之後再判斷是否求倒數
class solution
double power(double
base, int exponent)
};
劍指offer 12 數值的整數次方
給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。1 對數字的預處理,比如,0的負數次方等 2 提高計算n的m次方的效率方法一 遞迴。利用公式 ab b 2 0 ab 2 ab 2 a b 1 2 a b 1 2 aclass soluti...
劍指Offer 12 數值的整數次方
description給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。用divide conquer的思路可以每次平方,最後堆起來得到答案。最開始的時候我搞不太清exp 0,1這種情況怎麼合併,所以就單獨分了出來。c double pow...
劍指offer(12)數值的整數次方
題目描述 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。思路 首先把指數都換成正數,然後對指數進行移位運算,指數二進位制形式有多少位就進行多少次底數相乘運算,但只有該位不為0時乘到要返回的res中。1 public class solu...