JAVA:递归和迭代两种方法计算斐波那契数列

本来这个数列在很早之前就用递归做过一次,当时求的项都比较小,感觉不出来什么差别。今天,老师讲到数据结构和算法,布置了一道作业,求斐波那契数列的第60项,要求是在10分钟内计算出结果。
兴致勃勃的拿出之前写的代码,为了计算程序耗时,加上了计算运行时间的代码,一跑,傻眼了,等了半天也没见出结果,后来索性不管去做其他的事情了。吃完晚饭回来,一看电脑,好嘛,运行出结果了。下面是图:
JAVA:递归和迭代两种方法计算斐波那契数列
不知不觉跑了快一个半小时了,才出结果。跟需求的十分钟真是天壤之别啊。
后来,改用迭代,运行出结果,秒秒钟的事啊
JAVA:递归和迭代两种方法计算斐波那契数列
关于递归和迭代,网上也有很多分析的帖子,大致就是递归是一直调用自己,造成很多的重复计算,浪费大量时间。而迭代,却不存在这样的问题,它是一直计算,一直逼近最终答案。这里放个传送门,大家可以更好的了解递归和迭代
传送门:https://www.cnblogs.com/zhizhan/p/4892886.html

2017/8/17
Lucifer