斐波那契数列&&跳台阶

斐波那契数列

  • 要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39
  • 分析
    斐波那契数列: 1,1,2,3,5,8,13···
 a=1  -->         a=1  -->          a=2 -->          a=3
 b=1  -->  下一组  b=2  -->  下一组   b=3 -->  下一组   b=5
 c=2  -->          c=3  -->          c=5 -->          c=8
  • 代码实现
public class Solution {
    public int Fibonacci(int n) {
       if(n==0){
         return 0;  
       }
       if(n==1 || n==2){
            return 1;
        }
        int a=1;
        int b=1;
        int c=2;
        for(int i=3;i<n;i++){
            a=b;
            b=c;
            c=a+b;
        }
      return c;
    }
}

跳台阶

  • 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
public class Solution {
    public int JumpFloor(int target) {

        if(target<4){return target;}
        
        int x=1;
        int y=2;
        int z=3;
        for(int i=4;i<=target;i++){
            x=y;
            y=z;
            z=x+y;
        }
       return z;
    }
}
posted @ 2020-02-13 22:29  VVII  阅读(133)  评论(0)    收藏  举报