728x90
반응형

tree 5

[JAVA][LeetCode][Blind75] 235. Lowest Common Ancestor of a Binary Search Tree | BST | Recursion | Medium

문제 / 예제 / 제한조건 : p와 q 사이에 있는 Value를 가진 노드 중 가장 위에 있는 노드를 구하는 문제! 예전에는 Easy였는데, Medium 으로 바뀐듯?  # 풀이1. p와 q 범위 안에 들었다면 -> 리턴2. 범위 안에 들지 않았다면   -> 노드 왼쪽 확인 후 값이 null이라면   -> 노드 오른쪽 확인 후 값 리턴/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { public TreeNode lowestCo..

[Java][LeetCode][Blind75] 572. Subtree of Another Tree | Easy | Tree | Recursion

문제 / 예제 / 제한조건 :node 에 subNode가 포함되어 있는지 판단하는 문제. # 풀이1. 두 노드가 null 인지 확인 -> True2. 두 노드 중 한 노드만 null -> False3. 두 노드의 값이 같으면 -> 같은 노드인지 확인 (isSameTree 문제해서 사용했던 함수를 사용하면 된다 - https://codingstorywithme.tistory.com/88)4. 두 노드의 값이 다르면 -> 노드의 좌/우 로 이동해 같은 값을 찾아나가면 된다./** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * Tr..

[Java][LeetCode][Blind75] 226. Invert Binary Tree | Easy | Tree | Recursion

문제 / 예제 / 제한조건 :  풀이내가 생각한 리커전을 끝내는 조건은 1. 현재 노드가  null인 경우 -> 끝2. 현재 노드의 좌/우 가 모두 null인 경우 -> 끝 이 두조건에 해당하지 않는 경우1. 현재 노드의 좌/우 를 바꿔준다 2. 현재 노드의 좌/우 로 현재 노드를 변경하여 리커전 코드로 확인해보면/** * 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 ..

[Java][LeetCode][Blind75] 100. Same Tree | Easy | Tree | Recursion

문제 / 예시 / 제한조건 : 이것도 예전에 풀었던 문제 ㅋㅋ # 풀이 1생각해봐야하는 조건1. 두 노드가 null 인 경우 -> 같음 (true)2. 두 노드 중 하나의 노드만 null 인 경우 -> 다름 (false)3. 두 노드의 값이 다른 경우 -> 다름 (false)4. 두 노드의 값이 같은 경우 -> 같음 (true) 이렇게 4가지 조건/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode..

[Java][LeetCode][Blind75] 104. Maximum Depth of Binary Tree | EASY | Recursion

오랜만에 트리 문제 풀기! +ㅁ+ 문제 / 예제 / 제한조건 :알고보니 예전에도 푼 적이 있던 문제였다!예전이랑 비슷하지만 다른 방식으로 풀어서 보는 재미가 있는 느낌쓰~ # 풀이 1Solution에서 주는 함수 외에 count를 인자로 갖는 새로운 함수를 생성해서 해당 함수로 계산하는 방식node가 null 이 될 때까지 count + 1 를 해주면서 깊이를 세준다.노드에는 왼쪽 오른쪽이 있는데, 둘 중에 깊이가 더 깊은 수로 count를 해줘야 하기 때문에 Math.max 를 사용/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; ..

728x90
반응형