题解 | #二叉搜索树与双向链表#
二叉搜索树与双向链表
http://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5
因为二叉搜索树的中序遍历是有序的,所以选择中序遍历二叉树,在遍历的过程中将二叉搜索树转换为双向链表。
使用一个指针 pre 指向当前遍历节点的前一个节点。关键的三步操作
-
前一个节点 pre 的 right 指向当前节点(注意 pre 不能为空)
pre->right = cur -
当前节点的 left 指向前一个节点
root->left = pre -
不要忘了 pre 指向当前节点
pre =root
就构成了双向关联,当然上面两步中的关联可能原二叉树中就有,但是不影响答案。
格力公司福利 356人发布