二元查找树转为双向链表

输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 
  比如将二元查找树 
                                             10 
                                           /      / 
                                         6       14 
                                      /   /    /  / 
                                    4     8  12  16 
转换成双向链表 。
4=6=8=10=12=14=16。 

声明:思想不是原创。

方法一:其思想是分别转换左右子树成双向链,再通过根节点进行连接

方法二:更容易理解,中序遍历树,那依次访问的节点本身就是有序的,将节点依次加入到链表末尾即可

 

posted @ 2010-11-08 21:25  春文秋武  阅读(193)  评论(0编辑  收藏  举报