最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中跳臺階、變態(tài)跳臺階與矩形覆蓋問題的解決方法

 更新時間:2018年05月19日 15:00:15   作者:大師兄  
這篇文章主要給大家介紹了關(guān)于Python中跳臺階、變態(tài)跳臺階與矩形覆蓋問題的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

跳臺階、變態(tài)跳臺階、矩形覆蓋其實都和斐波那契數(shù)列是一類問題,文中通過示例代碼介紹的非常詳細,下面話不多說了,來一起看看詳細的介紹吧。

跳臺階

問題描述:

一只青蛙一次可以跳上1級臺階,也可以跳上2級。求該青蛙跳上一個n級的臺階總共有多少種跳法。

分析:

初始值很容易得到,當n > 2時,跳上n級臺階最后一步無外乎兩種情況,從第n-1級跳一級跳上來,或是從第n-2級跳2級跳上來,因此很容易得到如下遞歸公式。

F(0)= 0
F(1)= 1
F(2)= 2
F(n)= F(n-1)+ F(n-2)(n > 2)

代碼:

def jump_floor(number):
 if number <= 2:
  return number
 prev, curr = 1, 2
 for _ in range(3, number+1):
  prev, curr = curr, prev+curr
 return curr

變態(tài)跳臺階

問題描述:

一只青蛙一次可以跳上1級臺階,也可以跳上2級……它也可以跳上n級。求該青蛙跳上一個n級的臺階總共有多少種跳法。

分析:

相比上一個跳臺階,這次可以從任意臺階跳上第n級臺階,也可以直接跳上第n級。因此其遞歸公式為各個臺階之和再加上直接跳上去的一種情況。

F(0)= 0
F(1)= 1
F(2)= 2
F(n)= F(n-1)+ F(n-2)+ … + F(2)+ F(1)+ 1 = 2 **(n-1)

代碼:

def jump_floor(number):
 if number == 0:
  return 0
 return 2**(number-1)

矩形覆蓋

問題描述:

我們可以用2*1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋一個2*n的大矩形,總共有多少種方法?

分析:

仔細分析這個問題實際上就是普通的跳臺階問題。

F(0)= 0
F(1)= 1
F(2)= 2
F(n)= F(n-1)+ F(n-2)(n > 2)

代碼:

def jump_floor(number):
 if number <= 2:
  return number
 prev, curr = 1, 2
 for _ in range(3, number+1):
  prev, curr = curr, prev+curr
 return curr

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • Opencv-Python圖像透視變換cv2.warpPerspective的示例

    Opencv-Python圖像透視變換cv2.warpPerspective的示例

    今天小編就為大家分享一篇關(guān)于Opencv-Python圖像透視變換cv2.warpPerspective的示例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • python3爬蟲學習之數(shù)據(jù)存儲txt的案例詳解

    python3爬蟲學習之數(shù)據(jù)存儲txt的案例詳解

    這篇文章主要介紹了python3爬蟲學習之數(shù)據(jù)存儲txt的案例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Python中包的用法及安裝

    Python中包的用法及安裝

    在本篇文章里小編給大家整理的是關(guān)于Python中一些包的基本用處和安裝方法,需要的朋友們可以學習參考下。
    2020-02-02
  • Python實現(xiàn)鏈表反轉(zhuǎn)與合并操作詳解

    Python實現(xiàn)鏈表反轉(zhuǎn)與合并操作詳解

    這篇文章主要為大家詳細介紹了?Python?中反轉(zhuǎn)鏈表和合并鏈表的應(yīng)用場景及實現(xiàn)方法,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下
    2025-02-02
  • 詳解Python 重學requests發(fā)起請求的基本方式

    詳解Python 重學requests發(fā)起請求的基本方式

    這篇文章主要介紹了詳解Python 重學requests發(fā)起請求的基本方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02
  • python項目運行導致內(nèi)存越來越大的原因詳析

    python項目運行導致內(nèi)存越來越大的原因詳析

    最近在跑python程序時,出現(xiàn)占用的內(nèi)存不斷增加的情況,下面這篇文章主要給大家介紹了關(guān)于python項目運行導致內(nèi)存越來越大的原因詳析,本文通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-11-11
  • Python網(wǎng)絡(luò)爬蟲信息提取mooc代碼實例

    Python網(wǎng)絡(luò)爬蟲信息提取mooc代碼實例

    這篇文章主要介紹了python網(wǎng)絡(luò)爬蟲與信息提取mooc,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • pycharm?終端部啟用虛擬環(huán)境詳情

    pycharm?終端部啟用虛擬環(huán)境詳情

    這篇文章主要介紹了pycharm?終端部啟用虛擬環(huán)境詳情,文章圍繞pycharm?終端部啟用虛擬環(huán)境商務(wù)相關(guān)資料展開全文章的詳細內(nèi)容,需要的小伙伴可以參考一下
    2021-12-12
  • python中利用Future對象回調(diào)別的函數(shù)示例代碼

    python中利用Future對象回調(diào)別的函數(shù)示例代碼

    最近在學習python,所以這篇文章主要給大家介紹了關(guān)于在python中利用Future對象回調(diào)別的函數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習下吧。
    2017-09-09
  • Python安裝selenium包詳細過程

    Python安裝selenium包詳細過程

    在本篇文章里小編給大家整理了關(guān)于Python安裝selenium包詳細過程,需要的朋友們可以學習下。
    2019-07-07

最新評論

上栗县| 洛阳市| 通城县| 米脂县| 武定县| 中江县| 宁波市| 灯塔市| 理塘县| 漳浦县| 乌兰察布市| 榕江县| 景泰县| 乐东| 夏津县| 泰来县| 什邡市| 杨浦区| 恩施市| 云阳县| 镇远县| 博湖县| 南溪县| 安岳县| 山阴县| 吉隆县| 永德县| 揭阳市| 绥芬河市| 平阴县| 大余县| 连云港市| 罗源县| 积石山| 宁南县| 社旗县| 淮南市| 深州市| 尤溪县| 时尚| 垣曲县|