Algorithm/java tip
530. Minimum Absolute Difference in BST
개구리는 개꿀개꿀
2021. 3. 13. 15:41
leetcode.com/problems/minimum-absolute-difference-in-bst/
Minimum Absolute Difference in BST - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
/*
Tree의 value들 간에 차이가 가장 작은 값
Tree 순회
- prenoder : self, left, right
- inorder : left, self, right
- postorder : left, right, self
이진트리의 성질
- inorder -> 오름차순 정렬이 됨
- 두번째 노드를 찾았을 때 부터 앞 노드 값과 차이값을 구해서 min값 유지
*/
class Solution {
boolean init;
int min;
int prev;
public int getMinimumDifference(TreeNode root) {
init = false;
min = Integer.MAX_VALUE;
inorder(root);
return min;
}
public void inorder(TreeNode root) {
if(root == null) return;
inorder(root.left);
// self
if(!init) {
init = true;
} else {
min = Math.min(min, root.val - prev);
}
prev = root.val;
inorder(root.right);
}
}