`

线索二叉树的线索化算法

 
阅读更多

在严蔚敏的《数据结构》一书中,所使用的代码存在一些小问题。原版代码就不附上了,主要问题是:

1.InThreading函数的参数,应该携带pre,这应该是比较严重的问题。如果没有携带pre,则对pre的修改只是在调用的函数中的局部变量的值的修改,没有影响到原来的pre的值。

2.在条件语句中,将命中概率高的语句放在前面,会提高代码效率。但严的算法中在InOrderThreading算法中,将T为NULL时放在了前面。

3.InOrderThreading中,只有T为NULL时,执行Thrt->rchild = Thrt才有意义。而在T不为NULL时,要执行Thrt->rchild = pre,即使开始执行了Thrt->rchild = Thrt,也会被覆盖掉,所以把Thrt->rchild = Thrt句移到了else分句中。

欢迎讨论、批评与指正!

ALex ZhonG

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics