본문 바로가기
Algorithm

[Algorithm][Tree][Java] 문제 풀이 #26 - 102. Binary Tree Level Order Traversal

by Lee David 2022. 8. 22.
반응형
문제 링크

https://leetcode.com/problems/binary-tree-level-order-traversal/

내 코드
List<List<Integer>> resultList = new ArrayList();

public List<List<Integer>> levelOrder(TreeNode root) {
    List<TreeNode> list = new ArrayList();
    list.add(root);
    if(root != null) recursion(list);
    return resultList;
}

private void recursion(List<TreeNode> list) {
    if(list.size() == 0) return;
    List<TreeNode> childList = new ArrayList();
    List<Integer> result = new ArrayList();

    for(TreeNode node : list) {
        if(node.left != null) childList.add(node.left);
        if(node.right != null) childList.add(node.right);
        result.add(node.val);
    }

    resultList.add(result);

    recursion(childList);
}
결과

왠일로 풀수 있는 문제가 생겨 다행이다.

사실 어제 풀었던 문제보다는 난이도가 낮은거 같다.

코테에도 이렇게 운좋게 풀리는 문제가 있었으면 좋겠다.

반응형