문제링크 : www.hackerrank.com/challenges/tree-level-order-traversal/problem
Tree: Level Order Traversal | HackerRank
Level order traversal of a binary tree.
www.hackerrank.com
노드의 height가 낮을수록, 왼쪽 노드일 수록 먼저 출력하는 코드다. 같은 레벨의 노드를 먼저 출력하기 위해서 같은 높이의 노드들을 left 노드부터 큐에 담도록 짰다
public static void levelOrder(Node root) {
Queue<Node> q = new LinkedList<Node>();
q.offer(root);
while(!q.isEmpty()){
int q_size= q.size();
for(int i=0;i<q_size;i++){
Node cur = q.poll();
if(cur.left!=null) q.offer(cur.left);
if(cur.right!=null) q.offer(cur.right);
System.out.print(cur.data + " ");
}
}
}
'알고리즘 > 해커랭크' 카테고리의 다른 글
[해커랭크] Tree: Huffman Decoding [JAVA] (0) | 2021.01.19 |
---|---|
[해커랭크] Binary Search Tree : Insertion [JAVA] (1) | 2021.01.18 |
[해커랭크] Tree: Postorder Traversal [JAVA] (0) | 2021.01.18 |
[해커랭크] Tree: Height of a Binary Tree [JAVA] (0) | 2021.01.18 |
[해커랭크] Tree: Inorder Traversal [JAVA] (0) | 2021.01.18 |