[leetcode 107] Binary Tree Level Order Traversal II
Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root). For example: Given binary tree [3,9,20,null,null,15,7], return its bottom-up level order traversal as: [ [15,7], [9,20], [3] ] 문제 풀이: 레벨 기준 트리 순회 bfs로 순회하되 레벨을 기준으로 노드를 체크한다. 1. 맨 처음엔 루트 노드를 큐에 푸쉬 2. 큐의 사이즈를 체크 -> 같은 레벨에 있는 노드 수이다. 3. 벡터 생성 4. 큐의 사이즈 만..
2020. 11. 21.
[leetcode 105] Construct Binary Tree from Preorder and Inorder Traversal
Given preorder and inorder traversal of a tree, construct the binary tree. preorder와 inorder 배열보고 본래 이진 트리 구현하기 Note: You may assume that duplicates do not exist in the tree. For example, given preorder = [3,9,20,15,7] inorder = [9,3,15,20,7] Return the following binary tree: 풀이: - 난이도는 medium이었지만 몹시 어려웠다. - dfs와 inorder preorder의 개념이 혼합된 문제 - 핵심 개념: inorder는 왼쪽 서브트리 -> 루트 -> 오른쪽 서브 트리 preorder는..
2020. 10. 24.