刚刚入门的菜鸟,老师上课讲的,课下自己编程实现了一下。
递归的定义很简单,即一种直接或者间接调用自身的算法。
优点:使算法的描述简洁而且易于理解
实例1.计算N的阶乘
import java.util.Scanner;
//factorial 阶乘
/**
* @author Administrator
* 计算一个数的阶乘
*/
public class Factorial {
public static void main(String[] args) {
System.out.println("input a integer:");
Scanner input = new Scanner(System.in);
int number = input.nextInt();
System.out.println("factorial is: " + factorial(number));
}
/**
* @author Administrator
* @param number为要计算阶乘的数
* @return 返回该数的阶乘
*/
public static double factorial(int number){
if(number == 0){
return 1;
}else{
return number * factorial(number - 1);
}
}
}