什么是递归树?

时间:2013-08-01 12:07:26

标签: algorithm sorting recursion

在阅读有关合并排序的更多内容时,我遇到了递归树。什么是递归树?他们帮助解决递归问题吗?我们通过绘制递归树来实现什么?谷歌没有帮助我。

1 个答案:

答案 0 :(得分:1)

递归树可以演示递归可能有助于解决您的问题,还可以帮助揭示更糟/最佳案例场景。例如,如果您的二进制搜索算法的递归树始终采用最正确的路径,那么您可能处于更糟糕的情况(因为您的程序不是分支,为什么甚至使用树代表它?)。在一组输入上绘制算法的递归操作树也可以激发你的想法,如何将递归程序更改为迭代,这可能会或可能不会节省大量内存/时间。

或者它可以使你的递归程序看起来非常好,因为你可能会发现它在填充下一层之前几乎填满了所有叶子,并让你在树上快速操作。一个很好的例子是红黑二叉搜索树,但是以递归方式比合并排序更难以映射。