劍指Offer 11 數值的整數次方

2021-08-18 09:57:55 字數 687 閱讀 9353

1、浮點數的比較不能直接用「==」,精度問題

2、**的魯棒性,考慮非正常情況

3、0的0次方=1

4、unsigned int,計算機中數字都用補碼表示

5、移位運算

6、遞迴演算法

#include 

using

namespace

std;

class solution

unsigned

int ab***ponent = (unsigned

int)(exponent);

if (exponent < 0)

ab***ponent = (unsigned

int)(-exponent);

double result = powerwithunsignedexponent(base, ab***ponent);

if (exponent < 0)

return

1.0 / result;

return result;

}double powerwithunsignedexponent(double base, int exponent)

bool equal(double num1,double num2)

};int main()

劍指offer 11 數值的整數次方

題目描述 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。全面考慮問題 1 base 0或base 0 2 exponent 0或exponent 0或exponent 0 優化 notice exponent 1和exponent 0x...

劍指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...