26.二叉搜索树与双向链表
题目描述
输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。
题目解答
/** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { private TreeNode head=null; private TreeNode end=null; public TreeNode Convert(TreeNode pRootOfTree) { ConvertSub(pRootOfTree); return head; } public void ConvertSub(TreeNode pRootOfTree){ if(pRootOfTree==null){ return; } ConvertSub(pRootOfTree.left); if(end==null){ head=pRootOfTree; end=pRootOfTree; }else{ end.right=pRootOfTree; pRootOfTree.left=end; end=pRootOfTree; } ConvertSub(pRootOfTree.right); } }

浙公网安备 33010602011771号