java中的递归

递归算法的基本思想就是“自己调用自己”,一个使用递归技术的方法将会直接或间接的调用自己。

递归需要满足两点:

  • 1)定义递归头:说白了就是条件,在什么时候不去调用了,如果没有条件,则会陷入死循环。
  • 2)要有递归体:就是什么时候调用自己。

例子:100的阶乘

/**
 * 计算20的阶乘
 */
public class Recursion {
	static long factorial(int n){
		if(n==1) { //递归头
			return 1L;
		} else { //递归体
			return n*factorial(n-1);
		}
	}
	
	public static void main(String[] args) {
		long a = factorial(20);
		System.out.println(a);
	}
}



 

posted @ 2017-07-11 23:28  abel的博客  阅读(160)  评论(0编辑  收藏  举报