Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 코테
- sorting
- Binary Tree
- Class
- Stack
- Data Structure
- array
- 자바
- simulation
- Matrix
- java
- 코딩테스트
- Math
- Binary Search
- geometry
- implement
- Tree
- 파이썬
- greedy
- hash table
- Number Theory
- dynamic programming
- two pointers
- Method
- SQL
- database
- bit manipulation
- Counting
- string
- 구현
Archives
- Today
- Total
코린이의 소소한 공부노트
[LeetCode/Easy] 671. Second Minimum Node In a Binary Tree 본문
1. Input
1) TreeNode root
2. Output
1) root의 노드의 값 중 2번째로 작은 수를 반환
2) 만약 그런 값이 없다면 -1을 반환
3. Constraint
1) 트리 내의 노드 수의 범위는 [1, 25]이다.
2) 1 <= Node.val <= 2^31 - 1
3) 모든 노드들에 대하여 root.val == min(root.left.val, root.right.val)이 성립한다.
4. Example
Input: root = [2,2,5,null,null,5,7] -> Output: 5
Input: root = [2,2,2] -> Output: -1
5. Code
1) 첫 코드(2023/05/29)
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode() {}
* TreeNode(int val) { this.val = val; }
* TreeNode(int val, TreeNode left, TreeNode right) {
* this.val = val;
* this.left = left;
* this.right = right;
* }
* }
*/
class Solution {
public int findSecondMinimumValue(TreeNode root) {
Queue<TreeNode> q = new LinkedList<>();
q.add(root);
int[] nums = new int[2]; // nums[0] < nums[1]
Arrays.fill(nums, Integer.MAX_VALUE);
boolean check = false;
while(!q.isEmpty()){
TreeNode c = q.remove();
int x = c.val;
if(x<nums[0]){
nums[1] = nums[0];
nums[0] = x;
} else if(nums[0]<x && x<=nums[1]){
check = true;
nums[1] = x;
}
if(c.left!=null)
q.add(c.left);
if(c.right!=null)
q.add(c.right);
}
return !check ? -1 : nums[1];
}
}
'코딩테스트 풀이 > JAVA' 카테고리의 다른 글
[LeetCode/Easy] 697. Degree of an Array (0) | 2023.05.29 |
---|---|
[LeetCode/Easy] 696. Count Binary Substrings (0) | 2023.05.29 |
[LeetCode/Easy] 661. Image Smoother (0) | 2023.05.29 |
[프로그래머스/Lv.0] x 사이의 개수 (0) | 2023.05.25 |
[백준 온라인 저지] 1431. 시리얼 번호 (0) | 2023.05.24 |