搜索二叉树转换成链表

来源:互联网 发布:淘宝宝贝在线人数查询 编辑:程序博客网 时间:2024/06/04 17:54

将搜索二叉树转换成链表,不能创建新的节点,只能改变指针的指向。

 

 

 

无论是转换成单向链表还是双向链表,节点的顺序都是:1-2-3-4-5-6-7,等于中序遍历的顺序。

 

【1.1 二叉树-->双向链表】

二叉树是一种很适合使用递归算法的数据结构,考虑根结点和其左右子树,如果左右子树都已经完成转换了,那么只需要将左子树的最大结点和根连接,将根和右子树的最小结点连接即完成整棵数的转换。

 

   

 

【1.2 二叉树-->双向链表】

递归处理左右子树,再将左子树连上根,再连上右子树,得到链表。函数返回头节点方便链接操作。

 

【2. 二叉树-->单向链表】

与1.2类似,递归处理左右子树,但是要记住子链表的首尾结点,方便连接操作。对于单链表来说,从head开始,沿着rChild,可以遍历所有结点,而结点的lChild值和之前二叉树时的值一样。

原创粉丝点击