1. 程式人生 > >【劍指offer第八題】跳臺階

【劍指offer第八題】跳臺階

題目描述

一隻青蛙一次可以跳上1級臺階,也可以跳上2級。求該青蛙跳上一個n級的臺階總共有多少種跳法(先後次序不同算不同的結果)

第一級臺階1種,第二級臺階2種,第四級3種,第四級5種,第五級8種,每一級臺階跳法是前兩級跳法的和

符合斐波那契數列

f(n)=f(n-1)+f(n-2)也可以理解青蛙有兩種跳法,n-1級臺階跳一級和n-2臺階跳2級

public class Solution {
    public int JumpFloor(int target) {
        int result=0;
        int num1=1;
        int num2=1;
        if(target==1)
            return 1;
        for(int i=2;i<=target;i++){
            result=num1+num2;
            num1=num2;
            num2=result;
        }
        return result;
    }
}