16. 數值的整數次方(劍指 Offer 題解Java版)

2021-01-08 酷扯兒

本文轉載自【微信公眾號:五角錢的程式設計師,ID:xianglin965】經微信公眾號授權轉載,如需轉載與原文作者聯繫

文章目錄

16. 數值的整數次方題目連結題目描述解題思路實現代碼

16. 數值的整數次方

題目連結

NowCoder

題目描述

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

解題思路

下面的討論中 x 代表 base,n 代表 exponent。

比如,我們求n的32次方,我們先知道n的16次方,在16次方的基礎上再平方就可以,同理,我們可以先求8次方,4次方,2次方,因此我們求32次方就變成了先求平方,在此基礎上求4次方,再求8次方,再求16次方,最後就可以求得32次方。

我們提出如下的公式:

因為(x*x)n/2可以通過遞歸求解,並且每次遞歸n都減小一半,因此整個算法的時間複雜度為O(logN)。

實現代碼

package 數值的整數次方;

/*

作者 :XiangLin

文件 :Solution.java

IDE :IntelliJ IDEA

*/

public class Solution {

public double power(double base,int exponent){

if (exponent == 0)

return 1;

if (exponent == 1)

return base;

boolean isNagivate = false;

if (exponent < 0){

isNagivate = true;

exponent = -exponent;

}

double pow = power(base * base,exponent/2);

if (exponent % 2 != 0){

pow = pow * base;

}

return isNagivate? 1 / pow : pow;

}

public static void main(String[] args) {

Solution solution = new Solution();

System.out.println(solution.power(2.2,5));

}

}

相關焦點

  • 愛眼的16次方,全飛秒SMILE幫助百萬人摘鏡
    緊接著,周行濤被卡爾蔡司告知,醫院的飛秒儀器因為手術序列碼即將到達設計數值的頂端65536,需要清零後重新安裝。德國參與設計的一位研發者表示,之所以限定在65536,是因為在2003年,囿於晶片及當時對於手術數量的考慮,將頂值設計為2的16次方,即65536,沒有想到有機器會超過這個數值。
  • Excel如何輸入分數數值
    那麼如何正確輸入分數數值呢?方法如下。一、分數的分類分數分為三種:真分數,假分數,帶分數(假分數的一種形式)。1.真分數值小於1,分子比分母小,如1/3、4/34、3/89等。2.假分數值大於1,或者等於1,分子比分母大或相等,如5/3、7/7、45/23等。
  • HashMap的容量為什麼是2的n次方
    h >>> 16 這裡先解釋下這句話什麼意思,>>>其實是無符號右移,什麼意思呢,我們看下圖就明白了。將h轉換成二進位數,然後無符號右移16位,空缺的用0補齊,看圖中字體顏色我們就能清楚地明白這是怎麼操作的。
  • 42,人類破解宇宙生命終極答案,竟是3個整數的立方和!
    來源:新智元42,可以寫成3個整數的立方和!這是數學界的一大突破,由MIT和布裡斯託大學的數學家共同發現,他們以「生命、宇宙以及一切」的網頁標題,公布了這一成果。人類第一次將42寫成了3個整數的立方和!
  • 2的3次方和冷熱陰陽論,揭示先天八卦的數理
    數理上是2的3次方,體現出一生二,二生三,三生萬物。下圖是傳承的經典演示。數理是2的3次方等於8。八卦的數出來了,理又怎麼解釋呢?此時,為了便於記憶理解,就要引入四季八個節氣圖來代表八卦,引入季節的冷熱變化,來形象說明八卦陰陽的性質和數理。古人先把一年四個季節從秋冬和春夏分為陰陽二個部分。
  • 電影《八佰》票房突破24億,9月16日將在英國上映
    17天24億,擊敗一切對手,成為票房市場當之無愧的霸主,劍指2020年度冠軍! 另外,據新浪電影消息,《八佰》英國發行權被Trinity Cine Asia拿下,英國版定檔預告釋出,9月16日上映,將有2D和IMAX版。 目前來看,電影《八佰》已經成為2020年度全球首部單地區20億影片,也成為了中國影史第20部20億票房電影。
  • 令人心動的offer在哪個律所 令人心動的offer嘉賓資料名單
    《令人心動的offer》是由騰訊視頻推出的國內首檔律政職場觀察類真人秀,裡面會有很多的明星去參加,不過令人心動的offer在哪個律所呢?一起來看看令人心動的offer播出時間吧!令人心動的offer在哪個律所  《令人心動的offer》節目講述了八名懷抱著律師夢想的法學院學生,離開校園,步入職場,經歷為期一個月熱血殘酷又勵志的律所實習生活,爭奪兩個律所轉正offer的故事。  《令人心動的offer》以職場觀察為核心定位,在代入式、沉浸式的場景構建方面下足了功夫。
  • 九次方高管自曝空殼,還有多少不靠譜的大數據公司?
    日前,有「大數據獨角獸」之稱的九次方大數據信息集團有限公司(下稱九次方)管理層核心高管向媒體中國網財經爆料稱:上市公司群興玩具實控人、九次方董事長王叄壽於2020年1月15日被公安機關帶走調查;2月14日補繳了大額的稅款;此後辦理了取保候審手續。雖然群興玩具董秘胡明珠隨後否認,王叄壽現在並不是在取保候審階段,本人處於自由狀態。
  • 這個超大的100位整數除以7,餘數是多少?怎麼求?
    如果有人問:一個自然數除以另外一個正整數,餘數是多少,你會怎樣求呢?相信大多數人會說,我們直接用除法算式,把它算出來不就得了嗎?比如說23除以5它的餘數是多少?如果說一個整數,在數位比較少的時候可以死算的話,那麼這題連死算的機會都沒有。這張圖片來自網絡,圖中的題目屬於奧數題,有人說這題也太變態了,讓人看了就出一頭的冷汗。
  • 增強內氣和劍指技擊點穴的——凌空大力指印
    凌空大力指印則是一種匹配內力氣功訓練,增強兩手劍指技擊點穴療病能力之功法。如日日苦練,累月勤修,則真功自現,九九歸真鐵杵成真。培補是氣:站成四平大馬步樁,雙臂向前平伸與肩同高,雙手握成劍指狀,微閉雙目,以眉心、左右二目組成的:形三點神光回光內視凝神返照於小腹下丹田。吸氣意念全身毛孔開放,宇宙中精華之氣從全身毛孔及雙劍指魚貫而人,源源湧進下丹田。
  • 第19 p,了解Python中的數據類型,了解整數與浮點數
    大家好,我是楊數Tos,這是《從零基礎到大神》系列課程的第19篇文章,第二階段的課程:Python基礎知識:Python中的數據類型介紹及整數、浮點數的講解。學習本課程,建議先看一遍:【計算機基礎知識】課程。
  • 令人心動的offer在哪個律所 裡面會有很多的明星去參加
    令人心動的offer在哪個律所 裡面會有很多的明星去參加時間:2019-12-13 16:51   來源:燒荒網   責任編輯:凌君 川北在線核心提示:原標題:令人心動的offer在哪個律所 裡面會有很多的明星去參加 《令人心動的offer》是由騰訊視頻推出的國內首檔律政職場觀察類真人秀,裡面會有很多的明星去參加,不過令人心動的
  • 《我功夫特牛》首飾基礎數值含義是什麼 首飾基礎屬性介紹
    我功夫特牛首飾基礎數值含義是什麼?我功夫特牛中每個首飾都有它的基礎屬性,那麼下面小編就為大家介紹一下首飾階級基礎數值的含義以及如何挑選,希望能幫助到大家,一起來看看吧。 我功夫特牛首飾基礎屬性解析 基礎屬性都是按階段分級的: 稀有高階:1階22%以下、2階23%以上。