Algorithm
872 : Leaf-Similar Trees ( leetcode / java )
코동이
2020. 10. 28. 11:16


*해결과정
List를 2개 만들고, DFS를 2번 돌려서 List를 비교한다. list를 비교할 때 equals를 써서 비교가 가능하다.
import java.util.*;
class Solution {
public boolean leafSimilar(TreeNode root1, TreeNode root2) {
List<Integer> list1 = new ArrayList<>();
List<Integer> list2 = new ArrayList<>();
DFS(root1, list1);
DFS(root2, list2);
return list1.equals(list2);
}
public void DFS(TreeNode root, List<Integer> list){
if(root.left==null && root.right==null){
list.add(root.val);
return;
}
if(root.left!=null) DFS(root.left, list);
if(root.right!=null) DFS(root.right, list);
}
}
* 같은 type을 가진 list를 비교할 때, 내부에 어떤 값을 가지고 있는지 equals로 비교가 가능하다!
반응형