Skip to content

Commit 5acb0e8

Browse files
99. Recover Binary Search Tree (java)
1 parent e335c21 commit 5acb0e8

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
class Solution {
2+
private TreeNode first,second,pre;
3+
public void recoverTree(TreeNode root) {
4+
traverse(root);
5+
int temp = first.val;
6+
first.val = second.val;
7+
second.val = temp;
8+
}
9+
private void traverse(TreeNode root) {
10+
if (root == null) return;
11+
traverse(root.left);
12+
if (pre != null) {
13+
if (first == null && pre.val > root.val) first = pre;
14+
if (first != null && pre.val > root.val) second = root;
15+
}
16+
pre = root;
17+
traverse(root.right);
18+
}
19+
}

0 commit comments

Comments
 (0)