My Sixth-Third Page - 爬楼梯 - By Nicolas
生活随笔
收集整理的這篇文章主要介紹了
My Sixth-Third Page - 爬楼梯 - By Nicolas
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
這篇page是針對(duì)leetcode上的70.爬樓梯所寫的。小尼先簡(jiǎn)單的說(shuō)明一下這道題的意思,就是假設(shè)一個(gè)人在爬樓梯,需要n個(gè)臺(tái)階才可以到達(dá)樓頂,每次可以向上爬1個(gè)或2個(gè)樓梯,需要給出有多少種方法可以到達(dá)樓頂。
小尼先拉一下代碼:
class Solution {public int climbStairs(int n) {int p = 0, q = 0, r = 1;for(int i = 1; i <= n; i++){p = q;q = r;r = p + q;}return r;} }小尼先簡(jiǎn)單的說(shuō)明一下這道題的解題的思想,其實(shí)這道題的思想還是比較簡(jiǎn)單的,小尼先拉一張圖,
通過(guò)上面的圖像我們可以知道就是我們?cè)谶M(jìn)行爬樓的過(guò)程中我們可以選擇向上爬一層或者兩層,我我們?cè)诓粩嗟南蛏吓赖倪^(guò)程中我們每一次向上爬的過(guò)程中疊加的過(guò)程是依據(jù)上一層或者上兩層的基礎(chǔ)不斷的疊加的,所以我們?cè)诓粩嗟寞B加的過(guò)程中我們發(fā)現(xiàn)這就非常符合給斐波那契的數(shù)列的模式。所以才有了我們上面所寫的代碼。
?
總結(jié)
以上是生活随笔為你收集整理的My Sixth-Third Page - 爬楼梯 - By Nicolas的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 光栅图形学(一)——直线段的扫描转换算法
- 下一篇: 盘点Google在2011年的重要收购