Algorithm 所有可以用递归解决的问题都可以用循环解决吗?

Algorithm 所有可以用递归解决的问题都可以用循环解决吗?,algorithm,loops,language-agnostic,recursion,Algorithm,Loops,Language Agnostic,Recursion,所有可以用递归解决的问题都可以用循环解决,反之亦然 这句话是正确的还是经过证实的? 有时,使用递归会导致堆栈溢出。 如果陈述是正确的。我们最好改用循环 谢谢是的。循环+堆栈将解决所有递归问题 毕竟,编译器是在内部完成的。递归只不过是将数据推送到堆栈上,然后由编译器从堆栈中弹出。通常,相应的迭代(循环)解决方案需要同样多的存储,但需要显式管理。使用循环解决通常意味着使用堆来存储堆栈而不是线程的调用堆栈。可能的重复不是重复-这一个要求递归->迭代,另一个要求迭代->recursive@ltjax-答

所有可以用递归解决的问题都可以用循环解决,反之亦然

这句话是正确的还是经过证实的? 有时,使用递归会导致堆栈溢出。 如果陈述是正确的。我们最好改用循环


谢谢

是的。循环+堆栈将解决所有递归问题


毕竟,编译器是在内部完成的。递归只不过是将数据推送到堆栈上,然后由编译器从堆栈中弹出。

通常,相应的迭代(循环)解决方案需要同样多的存储,但需要显式管理。

使用循环解决通常意味着使用堆来存储堆栈而不是线程的调用堆栈。可能的重复不是重复-这一个要求递归->迭代,另一个要求迭代->recursive@ltjax-答案是一样的-他们可能会问不同的方向,但是另一个问题的答案提到了递归和迭代是等价的。@Birryrree我认为这样的政策是,两个不同的问题,有相同的答案,不被认为是重复的。