首页 > 编程语言 > 详细

递归算法

时间:2019-05-11 22:09:26      阅读:132      评论:0      收藏:0      [点我收藏+]
public class Test {
    public int factorial(int n) {        
        if (n == 1 || n == 0){
            return n;
        }else{
            return n * factorial(n - 1);
        }            
    }
    public static void main(String[] args) {
        Test test = new Test();
        System.out.println(test.factorial(6));
    }
}

递归算法解决问题的特点:

(1) 递归就是在过程或函数里调用自身。

(2) 在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。

(3) 递归算法解题通常显得很简洁,但运行效率较低。所以一般不提倡用递归算法设计程序。

(4) 在递归调用的过程当中系统为每一层的返回点、局部量等开辟了栈来存储。递归次数过多容易造成栈溢出等。所以一般不提倡用递归算法设计程序

递归算法

原文:https://www.cnblogs.com/zhangxiong-tianxiadiyi/p/10850214.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!