永发信息网

同样的算法,用递归是不是比递推慢很多

答案:3  悬赏:50  手机版
解决时间 2021-03-20 11:21
同样的算法,用递归是不是比递推慢很多
最佳答案
如果单纯的递归一定会慢很多,因为你计算时反复计算了一些值,浪费了相当多的时间,
但是优化之后的递归和地推效率基本一样,虽然递归要进栈出栈花费时间,且容易因递归深度过大而栈溢出.

所谓的优化,就是记忆化,比如递归函数是f(a,b)
那么弄一个数组,f_r[a,b]
每次运行递归函数f(a,b)时,检测f_r[a,b]的值是否已定义,是则返回这个值,否则执行函数,且在函数返回前记录返回值到f_r[a,b]中.
全部回答
是的
递归每次进入就是调用子程序,必然慢.而且要不断开内存.
.多了自然影响速度.
递推和递归比较有意思,简单的说,递推是在借助前一个几经计算出来的结果去计算下一步的结果,以此来得到最终结果,有此可知递推并不需要保留太多现场信息,
而递归就不一样,虽然也是要借助前一步的结果,但这前一步结果往往刚开始是未知的,要一步一步递推下去,直到遇到终结条件,然后在一层一层的回归,直到回归到最上一层计算出结果,可见递归是包含两步的,一个递推下去,一个在回归 ,
递归往往表达简单 ,但计算需要时空都比较大
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
绘声绘影输出8%就出问题
心品味黄焖鸡米饭前进道店地址在什么地方,想
除了绿色以外,还有什么颜色昰对眼睛好的?
小茶花之死在文中有哪些方面的暗示
dnf86版本剑魂异界套冽风6+潜龙3怎样?
请问,气武用紫装好还是定国好?,如题
正版我的世界怎么安装forge 求远程或者手把手
四季阳光酒店在什么地方啊,我要过去处理事情
药品追溯平台供应商除了阿里、爱创意外还有别
地轨中心刷哪个深渊
关于交行 东方航空visa金卡
工行逸贷信用卡为什么不能在苹果官方买iphone
求解签,“好枝花椰,雪里发迟,冬天开花,不遇
摩恩花洒 65132和61132哪个好
82度的葡萄烈酒要怎么喝
推荐资讯
最近有几个英语作文,工作太忙实在没心思搞这
国内合法炒黄金平台有哪些
电子签证和普通签证 有什么不同
civil responsibility是什么意思
米拉熊贝恩宝母婴用品怎么去啊,有知道地址的
新鲜葫芦煮完以后怎么处理
求助,换了设备iCloud备份无法删除
岳麓山要爬多久
双飞发艺我想知道这个在什么地方
国产杂牌手机哪个好点
清城区凤城街道办事处田龙卫生室怎么去啊,有
日产奇骏老款空调格在那边
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?