劍指offer---數值的整數次方(Java)

題目描述

給定一個double類型的浮點數base和int類型的整數exponent。求base的exponent次方。

保證base和exponent不同時爲0

解題思路

在這裏插入圖片描述
注意result用double,別用int,首先牛客用2,-3來檢測,博主檢查半天才發現。。。。

運行代碼

public class Solution {
    public double Power(double base, int exponent) {
        int tmp = exponent;
        double result = 1;
         if(exponent == 0){
            return 1;
        }else if(exponent < 0){
            tmp = exponent;
            exponent = -tmp;
        }
        while(exponent!=0){
            if((exponent&1)==1){
                result *= base;
            }
            base *=base;
            exponent>>=1;
        }
        return tmp>=0?result:(1/result);
  }
}

效果截圖

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章