国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

LeetCode ! 50. Pow(x, n)

這篇具有很好參考價值的文章主要介紹了LeetCode ! 50. Pow(x, n)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

參考資料:左程云算法課 , 《程序員代碼面試指南》

50. Pow(x, n)
Implement pow(x, n), which calculates x raised to the power n (i.e., xn).

 

Example 1:

Input: x = 2.00000, n = 10
Output: 1024.00000
Example 2:

Input: x = 2.10000, n = 3
Output: 9.26100

思路:
以求 1 0 75 10^{75} 1075為例, 75 = 64 + 8 + 2 + 1 = ( 1001011 ) 2 75 = 64+8+2+1=(1001011)_2 75=64+8+2+1=(1001011)2?
so, 1 0 75 = 1 0 64 × 1 ? 1 0 32 × 0 ? 1 0 16 × 0 ? 1 0 8 × 1 ? 1 0 4 × 0 ? 1 0 2 × 1 ? 1 0 1 × 1 = 1 0 ( 1001011 ) 2 10^{75}=10^{64\times1}·10^{32\times0}·10^{16\times0}·10^{8\times1}·10^{4\times0}·10^{2\times1}·10^{1\times1}=10^{ (1001011)_2} 1075=1064×1?1032×0?1016×0?108×1?104×0?102×1?101×1=10(1001011)2?
we assume that base=10, res=1.
二進(jìn)制表示的最低位(最右邊的那一位)是1, 那么
r e s = r e s × b a s e = 10 , b a s e = b a s e × b a s e = 1 0 2 res = res \times base = 10, base = base\times base=10^2 res=res×base=10,base=base×base=102
二進(jìn)制表示的倒數(shù)第二位是0,那么
r e s = r e s = 10 , b a s e = b a s e × b a s e = 1 0 4 res = res = 10, base = base\times base=10^4 res=res=10,base=base×base=104
and so on. we can get the ans, which is the final 'res`.

注:整數(shù)的冪可以擴(kuò)展到矩陣的冪, 把res的起點設(shè)置為單位矩陣即可。矩陣冪的應(yīng)用見斐波那契數(shù)列相關(guān)問題(詳細(xì)可查閱《程序員代碼面試指南》)。
注2: 這道題要考慮到冪可能取負(fù)數(shù)。對于普通負(fù)數(shù),我們也可以直接取相反數(shù),計算得結(jié)果后再取倒數(shù)即可;特別要注意的是,冪可能取到 系統(tǒng)最小值, 這時直接取相反數(shù)還是 系統(tǒng)最小指 它自身,于是需要特別處理,大致思路是
x M I N = x M I N + 1 / x x^{MIN} = x^{MIN+1}/x xMIN=xMIN+1/x,而 x M I N + 1 x^{MIN+1} xMIN+1是一種普通情況可以調(diào)用當(dāng)前這個函數(shù)解決。
詳細(xì)見代碼。文章來源地址http://www.zghlxwxcb.cn/news/detail-480056.html

public double myPow(double x, int n){

           if(x==0||x==1){return x;}
           if(n==0){return 1;}
            // there exists one case "x=2.00000, n=-2147483648"
            if(n==Integer.MIN_VALUE)
            {
                if(x>1 || x<-1){return 0;}
                return myPow(x,n+1)/x;
            }

            boolean isPos = true;
            if(n<0)
            {
                isPos=false;
                n =-n;
            }
             
            double base=x;
            double res = 1;
            for(;n!=0;n>>=1)
            {
                if((n&1)==1)
                {
                    res*=base;
                }

                base = base*base;
            }

        return isPos?res:1/res;
       }

到了這里,關(guān)于LeetCode ! 50. Pow(x, n)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 資料與參考

    資料: 本書(《Python神經(jīng)網(wǎng)絡(luò)編程》)的資料是使用Jupyter notebooks寫的,本人并不擅長使用Jupyter,所以用傳統(tǒng)py重寫了一遍,并附加了新功能(即多數(shù)字識別),現(xiàn)將Jupyter版和py版連帶本書pdf一并上傳至gitee,地址:python-neuralNetwork-coding: 《Python神經(jīng)網(wǎng)絡(luò)編程》pdf和隨書源碼,

    2024年02月11日
    瀏覽(23)
  • 算法leetcode|50. Pow(x, n)(rust重拳出擊)

    實現(xiàn) pow(x, n) ,即計算 x 的整數(shù) n 次冪函數(shù)(即, x n )。 解釋: 2 -2 = 1/2 2 = 1/4 = 0.25 -100.0 x 100.0 -2 31 = n = 2 31 -1 n 是一個整數(shù) -10 4 = x n = 10 4 面對這道算法題目,二當(dāng)家的再次陷入了沉思。 直接想到的就是模擬, x 循環(huán) n - 1 次乘以 x ,時間可以抹平一切,但是會非常慢。 還

    2024年02月05日
    瀏覽(20)
  • Fast Planner——代碼解讀參考資料整理

    Fast Planner——代碼解讀參考資料整理

    參數(shù)解讀 主要函數(shù)解讀 概率柵格地圖,概率更新過程的公式推導(dǎo)過程 全概率公式、貝葉斯公式 一. kinodynamic a_star(前端hybrid A_star動力學(xué)路徑搜索) 1.1啟發(fā)函數(shù)的計算 1.2 Compute shot Traj 1.3 節(jié)點擴(kuò)張 1.4 節(jié)點剪枝 1.5 返回kinopath與 getsamples 二、B樣條曲線設(shè)置 2.1 均勻B樣條設(shè)置

    2024年02月05日
    瀏覽(44)
  • [渝粵教育] 中國人民警察大學(xué) 工業(yè)企業(yè)防火 參考 資料

    教育 -工業(yè)企業(yè)防火-章節(jié)資料考試資料-中國人民警察大學(xué)【】 隨堂測驗 1、【判斷題】工業(yè)企業(yè)的火災(zāi)特點是涉及行業(yè)種類繁多,涉及到社會生活的方方面面。 A、正確 B、錯誤 參考資料【 】 2、【判斷題】工業(yè)企業(yè)的火災(zāi)特點是物資集中,存在各種形式的點火源,發(fā)生火災(zāi)

    2024年02月02日
    瀏覽(22)
  • [渝粵教育] 遼寧對外經(jīng)貿(mào)學(xué)院 數(shù)字新技術(shù) 參考 資料

    教育 -數(shù)字新技術(shù)-4-章節(jié)資料考試資料-遼寧對外經(jīng)貿(mào)學(xué)院【】 第一單元測驗 1、【單選題】1. 云計算是對(D)技術(shù)的發(fā)展與運用 云計算是對( )技術(shù)的發(fā)展與運用。 A、并行計算 B、網(wǎng)格計算 C、分布式計算 D、三個選項都是 參考資料【 】 2、【單選題】從研究現(xiàn)狀上看,下

    2023年04月25日
    瀏覽(88)
  • 【Python NLTK】零基礎(chǔ)也能輕松掌握的學(xué)習(xí)路線與參考資料

    【Python NLTK】零基礎(chǔ)也能輕松掌握的學(xué)習(xí)路線與參考資料

    Python 自然語言處理工具包(Natural Language Toolkit,簡稱 NLTK)是一款 Python 的庫,主要用于處理自然語言的相關(guān)問題,如文本清洗、標(biāo)記化、分詞、語義分析、詞性標(biāo)注、文本分類等功能,是數(shù)據(jù)科學(xué)家和機(jī)器學(xué)習(xí)工程師不可或缺的工具之一。 本文將介紹學(xué)習(xí) Python NLTK 的路線,

    2024年02月07日
    瀏覽(45)
  • 【Python psycopg2】零基礎(chǔ)也能輕松掌握的學(xué)習(xí)路線與參考資料

    【Python psycopg2】零基礎(chǔ)也能輕松掌握的學(xué)習(xí)路線與參考資料

    Python psycopg2是一個Python庫,在Python中提供了一個連接PostgreSQL數(shù)據(jù)庫的接口。它可以讓Python應(yīng)用程序和PostgreSQL數(shù)據(jù)庫之間進(jìn)行通信和數(shù)據(jù)傳輸。學(xué)習(xí)Python psycopg2的路線和教程可以在查閱資料和實踐中快速入門。 一、學(xué)習(xí)前置知識 學(xué)習(xí)Python psycopg2需要一定的前置知識,如Pytho

    2024年02月05日
    瀏覽(20)
  • 【Python Cookie 和代理 IP】零基礎(chǔ)也能輕松掌握的學(xué)習(xí)路線與參考資料

    【Python Cookie 和代理 IP】零基礎(chǔ)也能輕松掌握的學(xué)習(xí)路線與參考資料

    一、Python Cookie 1、什么是Cookie? Cookie是一種在客戶端保存數(shù)據(jù)的機(jī)制,服務(wù)器通過在HTTP響應(yīng)頭中添加Set-Cookie頭實現(xiàn)。瀏覽器在接收到響應(yīng)頭中的Set-Cookie后,會將這個Cookie保存在本地。之后每次請求都會將本地保存的Cookie自動添加到請求頭中,發(fā)送給服務(wù)器。 2、為什么需要

    2024年02月05日
    瀏覽(18)
  • 基于JAVA高校校園學(xué)習(xí)資料共享系統(tǒng) 設(shè)計與實現(xiàn)(springboot框架) 參考文獻(xiàn)

    ?博主介紹 :黃菊華老師《Vue.js入門與商城開發(fā)實戰(zhàn)》《微信小程序商城開發(fā)》圖書作者,CSDN博客專家,在線教育專家,CSDN鉆石講師;專注大學(xué)生畢業(yè)設(shè)計教育和輔導(dǎo)。 所有項目都配有從入門到精通的基礎(chǔ)知識視頻課程,免費 項目配有對應(yīng)開發(fā)文檔、開題報告、任務(wù)書、

    2024年01月19日
    瀏覽(30)
  • 基于python影視電影點評系統(tǒng)設(shè)計與實現(xiàn):開題報告、成品參考、畢設(shè)輔導(dǎo)資料

    基于python影視電影點評系統(tǒng)設(shè)計與實現(xiàn):開題報告、成品參考、畢設(shè)輔導(dǎo)資料

    ?博主介紹: 《Vue.js入門與商城開發(fā)實戰(zhàn)》《微信小程序商城開發(fā)》圖書作者,CSDN博客專家,在線教育專家,CSDN鉆石講師;專注大學(xué)生畢業(yè)設(shè)計教育和輔導(dǎo)。 所有項目都配有從入門到精通的基礎(chǔ)知識視頻課程,免費 項目配有對應(yīng)開發(fā)文檔、開題報告、任務(wù)書、PPT、論文模版

    2024年02月05日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包