0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

LeetCode初級(jí)算法-動(dòng)態(tài)規(guī)劃01:爬樓梯

電子設(shè)計(jì) ? 來源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-12-10 22:21 ? 次閱讀

LeetCode初級(jí)算法--動(dòng)態(tài)規(guī)劃01:爬樓梯

一、引子

這是由LeetCode官方推出的的經(jīng)典面試題目清單~
這個(gè)模塊對(duì)應(yīng)的是探索的初級(jí)算法~旨在幫助入門算法。我們第一遍刷的是leetcode推薦的題目。

二、題目

假設(shè)你正在爬樓梯。需要 n 階你才能到達(dá)樓頂。

每次你可以爬 1 或 2 個(gè)臺(tái)階。你有多少種不同的方法可以爬到樓頂呢?

注意:給定 n 是一個(gè)正整數(shù)。

示例1:

輸入: 2
輸出: 2
解釋: 有兩種方法可以爬到樓頂。
1.  1 階 + 1 階
2.  2 階

示例2:

輸入: 3
輸出: 3
解釋: 有三種方法可以爬到樓頂。
1.  1 階 + 1 階 + 1 階
2.  1 階 + 2 階
3.  2 階 + 1 階

1、思路

首先我可以確切的告訴你,這種簡(jiǎn)單的爬樓梯也是一個(gè)斐波那契數(shù)列,不信你自己從簡(jiǎn)單的數(shù)1,2,3..自己推論一下。

接著,我們來討論一般情況。我們把n級(jí)臺(tái)階時(shí)的跳法看成是n的函數(shù),記為f(n)。當(dāng)n>2時(shí),第一次跳的時(shí)候就有兩種不同的選擇:一是第一次只跳1級(jí),此時(shí)跳法數(shù)目等于后面剩下的n-1級(jí)臺(tái)階的跳法數(shù)目,即為f(n-1);另外一種選擇是跳一次跳2級(jí),此時(shí)跳法數(shù)目等于后面剩下的n-2級(jí)臺(tái)階的跳法數(shù)目,即為f(n-2)。因此n級(jí)臺(tái)階的不同跳法的總數(shù)f(n)=f(n-1)+f(n-2)。分析到這里,我們不難看出這實(shí)際上就是斐波那契數(shù)列了。

2、編程實(shí)現(xiàn)

python

class Solution(object):
    def climbStairs(self, n):
        """
        :type n: int
        :rtype: int
        """
        if n == 1:
            return 1
        a = 1
        b = 1
        for i in range(1,n):
            a , b = b , a+b
        return b

本文由博客一文多發(fā)平臺(tái) OpenWrite 發(fā)布!

審核編輯 黃昊宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1791

    文章

    47279

    瀏覽量

    238510
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8418

    瀏覽量

    132646
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5503

    瀏覽量

    121169
  • leetcode
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    2328
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Google日本子公司Schaft發(fā)布人形兩足機(jī)器人

    Schaft機(jī)器人令人驚嘆地自己走上了講臺(tái),還會(huì)自己清潔樓梯,在踩到鋼管這樣的物體之后也可以保持平衡,可以爬樓梯和擦樓梯,背負(fù)最多60公斤的重物。
    發(fā)表于 04-11 10:41 ?2392次閱讀

    LabVIEW中時(shí)怎么導(dǎo)入圖片的?

    `比如說爬樓梯的這個(gè)控件,是怎么把那個(gè)溫度計(jì)變成那個(gè)爬梯子的小人的?那個(gè)圖片是怎么轉(zhuǎn)的?還有設(shè)置背景的時(shí)候,我想導(dǎo)一個(gè)圖片進(jìn)來做背景的話,怎么把圖片導(dǎo)進(jìn)來?請(qǐng)指教!`
    發(fā)表于 12-15 22:58

    動(dòng)態(tài)規(guī)劃算法。

    動(dòng)態(tài)規(guī)劃算法資料。
    發(fā)表于 08-30 20:44

    LCS的動(dòng)態(tài)規(guī)劃算法

    LCS的動(dòng)態(tài)規(guī)劃算法(自底向上)
    發(fā)表于 05-25 15:06

    動(dòng)態(tài)規(guī)劃與貪婪法題的背包問題總結(jié)

    LeetCode & 劍指offer刷題】動(dòng)態(tài)規(guī)劃與貪婪法題16:背包問題總結(jié)
    發(fā)表于 06-09 16:44

    動(dòng)態(tài)規(guī)劃算法和貪心算法的區(qū)別與聯(lián)系

     動(dòng)態(tài)規(guī)劃算法和貪心算法,這兩種算法都是選擇性算法,就是從一個(gè)候選集合中選擇適當(dāng)?shù)脑丶尤虢饧?。兩種算法的應(yīng)用背景很相近,針對(duì)具體問題,有
    發(fā)表于 11-30 10:22 ?7.6w次閱讀
    <b class='flag-5'>動(dòng)態(tài)規(guī)劃算法</b>和貪心<b class='flag-5'>算法</b>的區(qū)別與聯(lián)系

    伯克利和CMU聯(lián)合開發(fā)能像人類一樣行走的腿形機(jī)器人ATRIAS

    還記得波士頓動(dòng)力那些靈活的機(jī)器人么,避障礙爬樓梯甚至送快遞,在各種地形隨意穿梭。
    的頭像 發(fā)表于 07-03 14:40 ?3996次閱讀

    這款爬樓快遞機(jī)器人,可以讓你不用下樓,快遞直接送進(jìn)家

    業(yè)內(nèi)專家在觀看了“爬樓梯快遞派送機(jī)器人”演示后認(rèn)為,相比外界所知道的京東派送快遞機(jī)器人,這款機(jī)器人的區(qū)別在于“可以在樓宇間穿行”,而且“履樓梯如平地”。
    發(fā)表于 07-26 15:33 ?6655次閱讀

    自制爬樓小車diy全過程

    近日心血來潮用Makeblock的零件搭了個(gè)自動(dòng)爬樓梯的小車
    的頭像 發(fā)表于 09-12 08:30 ?2.3w次閱讀

    爬樓梯的快遞機(jī)器人如果量產(chǎn) 快遞小哥真的要失業(yè)了

    最近,杭州電子科技大學(xué)的學(xué)生研發(fā)出了一款能爬樓梯的快遞機(jī)器人,它可以先給快遞買家發(fā)短信,得到“在家”確認(rèn)后再出發(fā)送快遞,并且還會(huì)告知對(duì)方預(yù)計(jì)達(dá)到時(shí)間,如果這款快遞機(jī)器人能量產(chǎn)的話,恐怕快遞小哥真的要失業(yè)了。
    發(fā)表于 01-30 13:36 ?1634次閱讀

    如何實(shí)現(xiàn)雙足機(jī)器人爬樓梯的步態(tài)規(guī)劃與參數(shù)優(yōu)化

    爬樓梯時(shí)的步態(tài)規(guī)劃問題作了以下幾方面研究工作: 首先,回顧了雙足機(jī)器人的發(fā)展歷史和研究現(xiàn)狀,并對(duì)目前主動(dòng)型雙足機(jī)器人平地和爬樓梯的步態(tài)規(guī)劃方法分別進(jìn)行總結(jié),介紹了本文課題來源和主要研究
    發(fā)表于 04-07 16:27 ?33次下載
    如何實(shí)現(xiàn)雙足機(jī)器人<b class='flag-5'>爬樓梯</b>的步態(tài)<b class='flag-5'>規(guī)劃</b>與參數(shù)優(yōu)化

    自動(dòng)調(diào)整平衡的爬樓梯機(jī)器人設(shè)計(jì)

    應(yīng)用中使用: ? 它們無法自行站立,爬樓梯或克服障礙。 ? 如果碰到或滑到光滑的表面上,它們很容易掉落,因?yàn)樗鼈円揽磕Σ羴肀3制胶狻?? ? 本研究的第一部分提出了一種新穎的設(shè)計(jì)來解決上述與爬樓梯,站立和障礙有關(guān)的問題。 ?
    的頭像 發(fā)表于 12-25 16:58 ?2697次閱讀

    如何利用Arduino UNO制作一個(gè)爬樓梯機(jī)器人

    本文將向您展示如何制作一個(gè)非?;镜?b class='flag-5'>爬樓梯機(jī)器人。這是我們?yōu)镾ervoCity+Actobotics爬樓梯挑戰(zhàn)而建造的樓梯熊。事實(shí)證明,最后的效果非常棒!
    的頭像 發(fā)表于 04-03 15:39 ?4264次閱讀
    如何利用Arduino UNO制作一個(gè)<b class='flag-5'>爬樓梯</b>機(jī)器人

    爬樓梯,可旋轉(zhuǎn)90度立足的電動(dòng)車

    電動(dòng)車都是滾動(dòng)式的向前運(yùn)行,那么有沒有既是輪胎滾動(dòng)運(yùn)動(dòng),又可以變成爬樓梯的電動(dòng)汽車呢?下面圖的這個(gè)結(jié)構(gòu)就可以完美實(shí)現(xiàn),但要真正地成為量產(chǎn)產(chǎn)品,尚需時(shí)日。
    的頭像 發(fā)表于 04-06 11:43 ?2296次閱讀
    可<b class='flag-5'>爬樓梯</b>,可旋轉(zhuǎn)90度立足的電動(dòng)車

    制作一個(gè)爬樓梯機(jī)器人

    電子發(fā)燒友網(wǎng)站提供《制作一個(gè)爬樓梯機(jī)器人.zip》資料免費(fèi)下載
    發(fā)表于 10-18 09:14 ?1次下載
    制作一個(gè)<b class='flag-5'>爬樓梯</b>機(jī)器人