摘要: 1:二叉搜索树转换为双向链表递归思想:分为三部分,以4为根的书,以2为根的左子树,和以6为根的又子树。根据排序链表的定义,4的前驱为左子树上最大的值,后序为右子树上值最小的值。按照中序遍历的顺序,遍历到根结点4的时候,左子树已经转换为一个有序的链表了,并且处在链表最后一个位置的节点为左子树的最大节点。把4与3连接起来,4成为当前链表的最大值,然后再去转换右子树。由此可以联想到用递归。非递归思想:二叉树的非递归中序遍历,用栈的方法,记录前一个出栈的节点即可。 1: #include<iostream> 2: #include <queue> 3: #include < 阅读全文
posted @ 2012-10-22 21:52 foreverlearn 阅读(1306) 评论(0) 推荐(0) 编辑