zoukankan      html  css  js  c++  java
  • 递归

    递归:是一种编程手法,函数自身直接或间接调用了自身

    public class FileRecursion {
        public static void main(String[] args) {
        }
        public static void show(){
            //show();//直接调用自身
            Method();
        }
        public static void Method() {
            show();//间接调用自身 
        }
    }

    注意:
      1.递归一定要明确条件,否则容易栈溢出(StackOverflowError),只进不出
      2.递归的次数

    什么时候用递归:一个功能在被重复只用,并每次使用时,参与运算的结果和上一次调用有关,这时可以用递归来解决问题

    public class FileRecursion {
        public static void main(String[] args) {
            toBin(6);
        }
        public static void toBin(int num){
            if(num>0){
                System.out.println(num%2);//将该句放到toBin方法下面结果的顺序会翻过来,因为栈中最上层的先出栈,所以结果会反过来变成110
                toBin(num/2);
                
            }
        }
    }

     

    public class FileRecursion {
        public static void main(String[] args) {
            System.out.println(getSum(5));
        }
        public static int getSum(int num){    
            int x = 9;
            if(num==1)
                return 1;
            
            return num+getSum(num-1);
        }
    }

     

  • 相关阅读:
    mysql(二)数据类型
    mysql(一)
    MySQL8 安装官方示例 employees 数据库
    Elasticsearch入门
    redis入门
    git 基本使用
    vue-cli4环境变量配置和代理跨域配置
    nginx配置
    彻底搞清浏览器和服务器跨域
    File文件过滤器
  • 原文地址:https://www.cnblogs.com/LO-ME/p/3594977.html
Copyright © 2011-2022 走看看