Algorithm I 筆記撰寫計畫 第十一天第二題,共三題。
- 難度:
Easy
- 花費時間: 5 min
- 題目: 104. Maximum Depth of Binary Tree
給你一個 Binary Tree
,回傳他的深度。
點我開啟限制與範例
限制:
- The number of nodes in the tree is in the range
[0, 10^4]
. -100 <= Node.val <= 100
Example 1:
1 | Input: root = [3,9,20,null,null,15,7] |
Example 2:
1 | Input: root = [1,null,2] |
筆記
這題題目要求非常簡單,回傳深度。
嘗試用 DFS
跟 BFS
兩種方式做。
DFS
DFS 相對簡單,就左右比大小就好。
1 | function maxDepth(root: TreeNode | null): number { |
BFS
概念跟 [LeetCode]102. Binary Tree Level Order Traversal 很像,把深度存起來,但是這次用的不同的資料結構。
1 | function maxDepth(root: TreeNode | null): number { |
成績
Language | Runtime | Beats | Memory Usage | Beats |
---|---|---|---|---|
BFS | 73 ms | 96.84% | 46.7 MB | 27.31% |
DFS | 120 ms | 45.26% | 46.8 MB | 27.31% |