一个简单的递归

来源:互联网 发布:淘宝怎么买翻墙 编辑:程序博客网 时间:2024/05/20 22:39

想实现一下功能,求第n个和。



实现代码如下:

package cursion;public class SanJiaoDataData {    public static void main(String[] args) {        SanJiaoDataData data = new SanJiaoDataData();        System.out.println(data.getResult(7));        System.out.println(data.getRecursionResult(1000));    }        int getResult(int num) {        int count = 0;        for (int i=0; i<=num;i++) {            count += i;        }                return count;    }        int getRecursionResult(int i) {        if (i > 1) {            return i + getRecursionResult(--i);        } else {            return i;        }    }}

现在探讨一下 递归函数的特征:

1.  调用自身

2. 每次调用都使得问题变小。

3. 当问题变小到每个点的时候不再调用自身。否则可能会无限循环。


递归的效率真的不咋地。但递归的思想很重要。比如在实现过滤器的时候就用到了递归的思想。

0 0
原创粉丝点击