1、递归函数: 即自调用函数,在函数体内直接或间接的调用自己,即函数的嵌套是函数本身。
2、递归方式:递归调用有直接递归和间接递归两种方式。
A:直接递归:在函数中出现调用函数本身。
B:间接递归:在A函数中调用B函数,然后在B函数中调用A函数实现递归。
3 、递归函数优点:递归的目的是简化程序设计,使程序易读。
4、递归函数的缺点:增加了系统开销,也就是说,每递归一次,栈内存就多占用一截
应用:用递归实现阶乘是最好不过的了,这样可以有效地缩短代码
Java中的循环和递归的比较
递归是指函数在运行中不断的调用自己的一中现象。递归并不是程序的流程结构,而是一种程序设计的一种思路和实现方式。而且递归不是一种算法,只是实现一种算法的思想。递归可以简化代码的思维强度,缩短代码,因此在很多语言中都有应用。
用递归实现阶乘是最好不过的了,这样可以有效地缩短代码。下面的代码就是用递归实现。
import java.util.*;
public class Factorial {
public static void main(String[] args){
System.out.println(”Please enter a number…”); Scanner in=new Scanner(System.in); int input=in.nextInt(); factorial(input);
System.out.print(factorials); }
private static void factorial(int n){ if(n>0){
factorials*=n; n- -; factorial(n);
}
}
淡看流光行远 发表于 2015-1-23 21:40
为什么基础班的视频不讲递归呢?是不是不重要?
淡看流光行远 发表于 2015-1-23 21:40
为什么基础班的视频不讲递归呢?是不是不重要?
淡看流光行远 发表于 2015-1-23 21:40
为什么基础班的视频不讲递归呢?是不是不重要?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |