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

本文通过对比递归与迭代方法求解斐波那契数列第60项的时间效率,展示了两种不同算法实现方式的特点及优劣。递归方法耗时较长且存在大量重复计算,而迭代方法则能快速得出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

2017/8/17
Lucifer

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值