关注微信公众号《课帮忙》查题 关注微信公众号《课帮忙》查题 关注微信公众号《课帮忙》查题 关注微信公众号《课帮忙》查题 关注微信公众号《课帮忙》查题 关注微信公众号《课帮忙》查题 公告:维护QQ群:833371870,欢迎加入!公告:维护QQ群:833371870,欢迎加入!公告:维护QQ群:833371870,欢迎加入! 2022-06-04 递归算法如何转换为非递归算法?( ) A: 可以直接将递归项去掉 B: 可以用队列模拟执行过程来转换 C: 可以用栈模拟执行过程来转换 D: 可以直接用循环代替递归项 递归算法如何转换为非递归算法?( )A: 可以直接将递归项去掉B: 可以用队列模拟执行过程来转换C: 可以用栈模拟执行过程来转换D: 可以直接用循环代替递归项 答案: 查看 举一反三 问题:递归算法如何转换为非递归算法?选项: A: 可以直接用循环代替递归项 B: 可以用队列模拟执行过程来转换 C: 可以直接将递归项去掉 D: 可以用栈模拟执行过程来转换 通常情况下,尾递归可以用循环语句转换为等价的非递归算法,其他递归算法可以用栈转换为等价的非递归算法。递归算法和等价的非递归算法相比,后者的执行效率更高些。 上述用栈来代替递归实现快速排序的算法,在最差情况下栈有多深?怎样组织递归调用的顺序可以减小栈的深度?试在上面程序的基础上写出改进的非递归算法。 递归算法转换为非递归算法时,通常借助于队列来实现。 中国大学MOOC:下列可以直接用循环结构即可将递归转换为非递归的是()