中序遍历

DNA图谱 / 问答 / 标签

求助大话数据结构中一段中序遍历线索化二叉树的源代码

这个一开始我也没看明白,而且我还马虎的看错了,看到你的问题我才发现自己看错了汗,但是后来仔细推了一下代码,在H点返回的时候 pre的赋值操作是没有意义。此时的pre 就只是一个全局定义的结点变量而已。当H结点的函数递归返回后,此时的pre == H结点,然后执行的是D结点函数的递归,当走到if(!p->rchild) { pre->Rtag=Thread; pre->rchild=p; }这里的时候,正好把,H结点的右指针指向了D。然后在执行 D->i 结点的函数,这个时候就通顺了,不知道你明白了没有,你可以自己在脑海里想一下递归的过程,先不用考虑第一次H结点的赋值。