543. Diameter of Binary Tree
題目網址:https://leetcode.cn/problems/diameter-of-binary-tree/
題意:給一 BT, 求任兩點的 path 之最大長度。
- 最大長度:最長 path 上的
edge
數
Solution:
想法:利用 DFS, LP(node) 返回以
node
為 root 的 subtree 之最長路徑, 只有當前 node 可以同時使用左子樹和右子樹(由左至右分別是 1, 2, 1), 也就是計算res
時可用, 但返回時只能 return 單邊路徑。由於 path 不一定要經過 root, 因此可用 global 變數res
來記錄最長 path 之長度
class Solution { |
- time:$O(n)$ ➔ 遍歷整個 BT
- space:$O(n)$ ➔ 取決於遞迴深度, worse case:skew tree
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Zako's Blog!
評論