반응형
1. 문제 정의
2. 문제 접근
dfs를 이용하여 완전탐색을 해주면 될 것 같다.
3. 문제 풀이
- 1 인덱스 부터 시작하여 dfs시작한다.
- depth를 같이 넘겨주어 depth가 홀수이면 양쪽 노드의 값을 교환해준다.
4. 코드
/**
* 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 TreeNode reverseOddLevels(TreeNode root) {
dfs(root.left, root.right, 1);
return root;
}
private void dfs(TreeNode node1, TreeNode node2, int depth){
if(node1 == null || node2 == null) return;
if(depth % 2 == 1){
int temp = node1.val;
node1.val = node2.val;
node2.val = temp;
}
dfs(node1.right,node2.left,depth+1);
dfs(node1.left,node2.right,depth+1);
}
}
5. 회고
계속해서 그래프 dfs를 풀다보니 조금 감이 잡히는 것 같다. 이 감을 잃지 않는데 집중하자.
반응형
'코딩테스트 > leetcode' 카테고리의 다른 글
99클럽 코테 스터디 17일차 TIL, DP(Count Sorted Vowel Strings) (1) | 2024.06.07 |
---|---|
99클럽 코테 스터디 16일차 TIL, DP(All Possible Full Binary Trees) (0) | 2024.06.06 |
99클럽 코테 스터디 12일차 TIL, 완전탐색( All Paths From Source to Target) (0) | 2024.06.02 |
99클럽 코테 스터디 11일차 TIL, DFS,BFS(Deepest Leaves Sum) (0) | 2024.06.01 |
99클럽 코테 스터디 4일차 TIL, Heap(Smallest Number in Infinite Set) (0) | 2024.05.25 |