일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- set
- map
- 스택
- NIO
- Union-find
- Calendar
- spring boot
- List
- alter
- string
- dfs
- math
- 큐
- GC로그수집
- sql
- 스프링부트
- Properties
- union_find
- 리소스모니터링
- Java
- CSS
- 힙덤프
- deque
- JPA
- BFS
- html
- date
- javascript
- priority_queue
- scanner
- Today
- Total
목록2024/10/29 (2)
매일 조금씩
queue를 사용해서 풀면 되는 문제였다. /** * 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 Lis..
어떻게 풀어야할지 모르겠었던 문제. 리프 노드부터 돌며,현재 노드를 최고 높은 루트 노드로 하여 순회한다고 할 때의 최댓값을 구하면 된다. 아래 두가지를 생각했다. 1) 재귀식과 리턴값 정하기그럼 재귀식이 필요한데.재귀식이 return 하는 값은 현재 노드까지의 최대값을 리턴하면 된다.그 값은 ~자식 노드가 left, right 두개이니,left 자식 노드까지의 값 (leftSum)right 자식 노드까지의 값 (rightSum)두 값 중 최대값에 현재 노드(root)의 value를 더한값을 리턴하면 된다. 2) 전체 최댓값 갱신 어떻게 할지 정하기그리고 매 root 마다,위 값 말고 현재 노드(root)가 최상위 노드가 될 경우에 대한 값(left 자식노드 합 + right 자식 노드 합 + 자기 자신..