天天看点

剑指offer--跳台阶

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

代码如下:

public class Solution {
    static int[] dp = new int[10000];

    public int JumpFloor(int target) {
        if ( target == 1){
            dp[target] = 1;
        }

        if ( target == 2){
            dp[target] = 2;
        }

        for ( int i = 3 ; i <= target ; i++){
            dp[i] = dp[i-1] + dp[i-2];
        }

        return dp[target];
    }
}           

复制

C++代码

class Solution {
    public:
        int data[1000000]; 
        int jumpFloor(int number) {
            if (number == 1){
                data[number] = 1;
            }
            if (number == 2){
                data[number] = 2;
            }
            for(int i = 3 ; i <= number ; i++){
                data[i] = data[i-1]+data[i-2];
            }
            return data[number];
        }
};           

复制

剑指offer--跳台阶
剑指offer--跳台阶