Convert Binary Search Tree (BST) to Sorted Doubly-Linked List

来源:互联网 发布:ug8 0数控编程视频教程 编辑:程序博客网 时间:2024/05/21 17:22

首先是中序遍历

其次记住这是要做成double list。

从第8行到13行,是对node和prev做连接,14行是先保存要访问的下一个结点,15,16行是对node和head做连接,因为这是double list,最后更新prev。

TreeNode head, prev;private void traverse(TreeNode node){if (node == null) {return;}traverse(node.left);node.left = prev;if (prev != null) {prev.right = node;} else {head = node;}TreeNode right = node.right;node.right = head;head.left = node;prev = node;traverse(right);}


0 0