• 台阶算法


    问题:上台阶,一次可以爬一阶或两阶,上完n级台阶有多少种方法呢?

    假设n=1,1种方法爬完      爬一级

    假设n=2,2种方法爬完,   一次爬一级   1   1; 一次爬两级  2

    在这个的基础上假设有n(n>2)级阶梯,若爬一级则剩下fun(n-1)种爬发,若爬两级剩下fun(n-2)种爬发。

    按照这个思想直接上代码:

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            System.out.println("请输入台阶数:");
            Scanner scanner = new Scanner(System.in);
            int n = scanner.nextInt();
            System.out.println("有"+fun(n)+"种走法!");
        }
    
        private static int fun(int n) {
            if (n == 1) {
                return 1;
            } else if (n == 2) {
                return 2;
            } else {
                return fun(n - 1) + fun(n - 2);
            }
        }
    
    }
  • 相关阅读:
    [转] Foobar2000 DSP音效外挂元件-Part4
    谷歌三件套
    Android 线刷小白教程
    nginx负载均衡
    HTTPS证书
    防火墙iptables
    LNMP架构部署
    tomcat部署
    shell编程
    HTTP协议
  • 原文地址:https://www.cnblogs.com/xiaoxueyong/p/5292470.html
Copyright © 2020-2023  润新知