![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
所有的递归程序或算法都能转化为迭代程序或算法么
展开全部
是的,通过PUSH压栈和PULL出栈就可以例子很多,而且在底层的话也就是通过压栈和出栈来实现递归算法的。
有些算法用递归要想转换成迭代还是比较复杂的,就比如典型的汉诺塔问题,尽管网上流传说已有人使用迭代解决了,但它的正确性是否得到了研究界人士的肯定这点尚未到得证实。目前普遍还是采用递归来实现它。
扩展资料:
跟迭代法相对应的是直接法(或者称为一次解法),即一次性的快速解决问题,例如通过开方解决方程x +3= 4。一般如果可能,直接解法总是优先考虑的。但当遇到复杂问题时,特别是在未知量很多,方程为非线性时,无法找到直接解法(例如五次以及更高次的代数方程没有解析解,参见阿贝耳定理),这时候或许可以通过迭代法寻求方程(组)的近似解。
参考资料来源:百度百科-迭代法
展开全部
从理论上来说是可以的,但有些算法用递归来描述会更加简洁和思路清晰虽然性能上要比迭代要慢。就目前来说有些算法用递归要想转换成迭代还是比较复杂的,就比如典型的汉诺塔问题,尽管网上流传说已有人使用迭代解决了,但它的正确性是否得到了研究界人士的肯定这点尚未到得证实。目前普遍还是采用递归来实现它。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是的,有专门消去递归的算法步骤的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询