2015년 8월 18일 화요일

LeetCode Binary Tree Level Order Traversal

https://leetcode.com/problems/binary-tree-level-order-traversal/
tree traversal 에는 여러가지 방법이 있다. 제일 유명한 세가지.
preOrder, inOrder, postOrder 들이 제일 유명하다. 이번에는 tree 의 levelOrder 로 트리를 탐방하는 것이다. 위에서부터 차례대로 읽어가는 것이다.

이 문제는 queue 를 이용해서 풀 수 있더라.
queue 는 뒤로 들어와 앞으로 나가는 FIFO 방식이기 때문에, 맨 앞의 item 의 left와 right를 queue에 넣도록 한다. 그리고 맨 앞의 item 를 빼주면서 List에 추가해줌. queue 에서 item 을 뺄 때 몇개를 뺄 지는 loop 에 들어가기 전에 queue의 사이즈를 알아내도록 한다.

댓글 없음:

댓글 쓰기