赛前十天——递归(easy)

*理论上,递归与循环是等价的,即任何循环都可以重写为递归形式
eg:
package javaPractice;

public class Contest {    
    public static void main(String []args) {
        print(5);
        System.out.println();
        print1(0,5);
    }
    
    public static void print(int n) {//静态方法只能调用本类的静态成员,静态方法中不可使用this,super关键字
        if(n>0) {
            print(n-1);
        }
        System.out.print(n+" ");
    }
    
    public static void print1(int start,int end) {
        System.out.print(start+" ");
        if(start != end) {
            print1(start + 1,end);
        }
    }
}
    注意:1.有时候,为栈限制,需要“尾递归”
          2.java不支持尾递归
*有些语言没有循环语句,只能使用递归

posted @ 2019-02-21 17:34  Moliay  阅读(9)  评论(0编辑  收藏  举报