`
韩悠悠
  • 浏览: 827244 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

递归算法

 
阅读更多

 *递归算法是把问题转化为规模缩小了的同类问题的子问题。然后递归调用函数(或过程)来表示问题的解。
 *递归过程一般通过函数或子过程来实现。递归方法:在函数或子过程的内部,直接或者间接地调用自己的算法。
 *该数列中的第N向是第n-1项加n的到的

 

package com.algorithm;

/**
 * 递归
 * @author lenovo
 *递归算法是把问题转化为规模缩小了的同类问题的子问题。然后递归调用函数(或过程)来表示问题的解。
 *递归过程一般通过函数或子过程来实现。递归方法:在函数或子过程的内部,直接或者间接地调用自己的算法。
 *该数列中的第N向是第n-1项加n的到的
 */
public class Recursion {

	public static void main(String[] args) {
		test2(100);
	}
	
	public static void test(){
		System.out.println("hello word!");
		test();
	}
	
	public static void test2(int num){
		System.out.println(num);
		if(num==0){
			System.out.println("stop!");
			return;
		}
		test2(num-1);
	}
}

 

package com.algorithm;

public class Triangle {

	public static int getNum(int n){
		int total=0;
		while(n>0){
			total = total+n;
			n--;
		}
		return total;
	}
	
	public static int getNumByRecursion(int n){
		if(n==1){
			return 1;
		}else{
			return n+ getNumByRecursion(n-1);
		}
	}
	
	public static void main(String[] args) {
		System.out.println(getNum(100));
		System.out.println(getNumByRecursion(100));
	}
}

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics