366 Find Leaves of Binary Tree
366. Find Leaves of Binary Tree
1. Question
Given a binary tree, collect a tree's nodes as if you were doing this: Collect and remove all leaves, repeat until the tree is empty.
Example: Given binary tree
1
/ \
2 3
/ \
4 5Returns[4, 5, 3], [2], [1].
Explanation:
Removing the leaves
[4, 5, 3]would result in this tree:
1
/
2Now removing the leaf
[2]would result in this tree:
1Now removing the leaf
[1]would result in the empty tree:
Returns[4, 5, 3], [2], [1].
2. Implementation
(1) DFS
思路: 对于每个node,找到它相应的高度,并根据这个高度加到相应的res里。leaves的那一层会在level 0。
3. Time & Space Complexity
DFS: 时间复杂度: O(n), 空间复杂度: O(n)
Last updated
Was this helpful?