CC150 : Binary Tree Inorder Successor
Assume you know the parent of the node, return the inorder successor.
1 class Solution { 2 public TreeNode inorderSuccessor(TreeNode node) { 3 if(node == null) return null; 4 if(node.right != null) { 5 node = node.right; 6 if(node == null) return null; 7 while(node.left != null) { 8 node = node.left; 9 } 10 return node; 11 } else { 12 TreeNode parent = node.parent; 13 while(parent != null && parent.left != node) { 14 node = parent; 15 parent = node.parent; 16 } 17 return node; 18 } 19 } 20 }

浙公网安备 33010602011771号