零基础学数据结构-----------探讨递归转化为非递归(3)

在零基础学数据结构中,特别是二叉树一章中,要将一个递归遍历二叉树转换为非递归的遍历。

例如,中序遍历递归程序转换为非递归程序,这是一个非常典型的例子。

先遍历左子树,

然后访问根结点

最后遍历右子树

如果将这个递归的定义转换为非递归呢,?这就需要研究它的递归过程了,只要将这个过程描述出来,程序就有了。我们总是先顺着左子树一直往下找,直到左子树为空,那先弄个循环来实现吧。参见笔记零基础学数据结构1和2

那接下来是不是要出栈一个元素,访问呀,

最后就是遍历右子树了。

你可能感兴趣的:(零基础学数据结构-----------探讨递归转化为非递归(3))