BST
99. Recover Binary Search Tree
def recoverTree(self, root: TreeNode) -> None:
x = y = pre = None
stack = []
node = root
while stack or node:
while node:
stack.append(node)
node = node.left
node = stack.pop()
# 先遇到 x or y, pre代表的點不一樣
if pre and pre.val > node.val:
y = node
if x == None:
x = pre
else:
break
pre = node
node = node.right
x.val, y.val = y.val, x.val450 Delete Node
701 Insert Node in BST
98 valid BST
173 BST Iterator
285 Inorder successor in BST
510 Inorder Successor in BST II
Search Range
firstGreaterThanK
230 find Kth smallest element in BST
315. Count of Smaller Numbers After Self
Last updated