Java跳臺(tái)階實(shí)現(xiàn)思路和代碼
跳臺(tái)階
1. 題目描述
一只青蛙一次可以跳上1級(jí)臺(tái)階,也可以跳上2級(jí)……它也可以跳上n級(jí)。求該青蛙跳上一個(gè)n級(jí)的臺(tái)階總共有多少種跳法。
2. 題目分析
- f(1) = 1
- f(2) 會(huì)有兩個(gè)跳得方式,一次1階或者2階,這回歸到了問(wèn)題f(1),
f(2) = f(2-1) + f(2-2)
- f(3) 會(huì)有三種跳得方式,1階、2階、3階,那么就是第一次跳出1階后面剩下:f(3-1);第一次跳出2階,剩下f(3-2);第一次3階,那么剩下f(3-3).因此結(jié)論是:
f(3) = f(3-1)+f(3-2)+f(3-3)
- f(n)時(shí),會(huì)有n中跳的方式,1階、2階…n階,得出結(jié)論:
f(n) = f(n-1)+f(n-2)+...+f(n-(n-1)) + f(n-n) => f(0) + f(1) + f(2) + f(3) + ... + f(n-1) == f(n) = 2*f(n-1)
3. 解題代碼
public class Solution { public int JumpFloor(int target) { if(target==0){ return 0; } if(target==1){ return 1; } return 2 * JumpFloor(target-1); } }
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(40)
下面小編就為大家?guī)?lái)一篇Java基礎(chǔ)的幾道練習(xí)題(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧,希望可以幫到你2021-07-07Spring JDBCTemplate原理及使用實(shí)例
這篇文章主要介紹了Spring JDBCTemplate原理及使用實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03java設(shè)計(jì)模式之實(shí)現(xiàn)對(duì)象池模式示例分享
對(duì)象池模式經(jīng)常用在頻繁創(chuàng)建、銷毀對(duì)象(并且對(duì)象創(chuàng)建、銷毀開(kāi)銷很大)的場(chǎng)景,比如數(shù)據(jù)庫(kù)連接池、線程池、任務(wù)隊(duì)列池等。本代碼簡(jiǎn)單,沒(méi)有限制對(duì)象池大小2014-02-02解決fastjson從1.1.41升級(jí)到1.2.28后報(bào)錯(cuò)問(wèn)題詳解
這篇文章主要介紹了解決fastjson從1.1.41升級(jí)到1.2.28后報(bào)錯(cuò)問(wèn)題詳解,需要的朋友可以參考下2020-02-02Mybatis中SqlSession下的四大對(duì)象之執(zhí)行器(executor)
mybatis中sqlsession下的四大對(duì)象是指:executor, statementHandler,parameterHandler,resultHandler對(duì)象。這篇文章主要介紹了Mybatis中SqlSession下的四大對(duì)象之執(zhí)行器(executor),需要的朋友可以參考下2019-04-04RabbitMQ,RocketMQ,Kafka?事務(wù)性,消息丟失,消息順序性和消息重復(fù)發(fā)送的處理策略問(wèn)題
這篇文章主要介紹了RabbitMQ,RocketMQ,Kafka?事務(wù)性,消息丟失,消息順序性和消息重復(fù)發(fā)送的處理策略,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03