大家好,欢迎来到IT知识分享网。
递归
递归是一种常见的解决问题得方法,既把问题逐渐简单化。递归的基本思想就是“自己调用自己”,一个使用递归技术的方法将会直接或者间接的调用自己。
利用递归可以用简单的程序来解决复杂的问题。如:斐波那契数列的运算,汉诺诺,快排等问题。
递归结构包括两部分:
-
定义递归头。
作用:规定什么时候不在调用自身方法,如果没有头,将陷入死循环,也就是递归结束的条件。 -
递归体。
作用:什么时候需要调用自身方法。
例:
public class Recursion01 {
public static void main(String[] args) {
A();
}
static int num=0;
static void A() {
System.out.println("递归");
num++;
if(num<10) {
//定义递归体
A();
}else {
//定义递归头
return;
}
}
}
递归的缺陷
简单是递归最大的优点之一,但是递归的调用会占用大量的系统堆栈,内存消耗多,在递归调用层次多时速度比循环慢的多,所以在使用递归时要慎重。
注意事项
任何能用递归解决的问题也能用迭代解决。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/14577.html