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);
        }
    }

     

  • 相关阅读:
    css 颜色
    目标
    css单位
    自我介绍
    Grid Layout
    position
    【转】android源码分析之windowmanager (android悬浮窗口的实现)
    java线程池原理
    STM32 中断中调用freeRTOS API 需要注意的地方
    今天开通博客园啦~~~~
  • 原文地址:https://www.cnblogs.com/LO-ME/p/3594977.html
Copyright © 2011-2022 走看看