Binary Tree Level Order Traversal
Given a binary tree, return thelevel ordertraversal of its nodes' values. (ie, from left to right, level by level).
For example:
Given binary tree[3,9,20,null,null,15,7],
3
/ \
9 20
/ \
15 7return its level order traversal as:
[
[3],
[9,20],
[15,7]
]Note:
in Binary Tree Level Order Traversal II, the requirement is only different in getting the outcome as reverse order, namely bottom-up level order traversal as:
[
[15,7],
[9,20],
[3]
]Analysis
Recursive - DFS
关键在传入一个结果的list,因为list中元素的序号代表了层数(n+1)
Queue
利用一个Queue记录需要扫描的层(level)的节点数(number of nodes),依次存入每个节点的左子节点和右子节点到Queue中,读取时依次从Queue取出节点并存入该层sub list,每层扫描完后存入总的wrap list。
Solution
Top-down level order traversal
Using Recursive - DFS
Using Queue - BFS
Bottom-up level order traversal
DFS - Recursive
BFS - Queue
Last updated
Was this helpful?