zoukankan      html  css  js  c++  java
  • 蓝桥学院2019算法题2.16

    题1:小白爬楼梯(递归设计)

    算法分析:f(n) = f(n-1) + f(n-2) + f(n-3)

     1 package recursion;
     2 
     3 import java.util.Scanner;
     4 
     5 /**
     6  * @author zsh
     7  * @company wlgzs
     8  * @create 2019-02-18 9:13
     9  * @Describe 题1·小白上楼梯(递归设计)
    10  * 小白正在上楼梯,楼梯有n阶台阶,
    11  * 小白一次可以上1阶、2阶或者3阶,
    12  * 实现一个方法,计算小白有多少种走完楼梯的方式
    13  */
    14 public class Main4 {
    15 
    16     public static void main(String[] args) {
    17         Scanner scanner = new Scanner(System.in);
    18         int n = scanner.nextInt();
    19         int res = f(n);
    20         System.out.println(res);
    21     }
    22 
    23     /**
    24      * 递归求上楼梯的次数
    25      * @param n n阶台阶
    26      * @return 上楼梯的次数
    27      * 找重复:
    28      * 找变化的量:n
    29      * 找出口: n==0 , n == 1 , n== 2
    30      */
    31     static int f(int n) {
    32         if (n == 0){
    33             return 1;
    34         }else if (n == 1){
    35             return 1;
    36         }else if (n == 2){
    37             return 2;
    38         }
    39         return f(n-1)+f(n-2)+f(n-3);
    40     }
    41 
    42 }
  • 相关阅读:
    CSS相关知识点
    嵌入式经典面试题
    代码阅读——十个C开源项目
    2020年3月编程语言排行
    C++题目
    英文符号对照大全
    详解Sort函数降序排序-c++
    C/C++语言学习资料,原创
    Bootstrap组件之响应式导航条
    Boostrap全局CSS样式
  • 原文地址:https://www.cnblogs.com/zsh-blogs/p/10394050.html
Copyright © 2011-2022 走看看