學習路線/樹 — 深度優先搜尋 (DFS)

100. 相同的樹

Easy

Same Tree

TreeDepth-First SearchBinary TreeRecursion

題目描述

給定兩棵二元樹的根節點 p 和 q,判斷它們是否完全相同。相同的樹是指結構相同且對應節點值也相同。

LeetCode 100原題連結 →

解法思路

  1. 使用遞迴(DFS)同時遍歷兩棵樹
  2. 若兩節點皆為 null,返回 true(都到底了)
  3. 若其中一個為 null 或值不同,返回 false
  4. 遞迴比較左子樹和右子樹,兩者都相同才返回 true

複雜度分析

  • 時間複雜度:O(n)
  • 空間複雜度:O(h),h 為樹的高度
Tree P123
Tree Q123
當前比較節點
已比較(相同)
已比較(不同)
演算法開始。我們使用遞迴 DFS 逐節點比較兩棵樹。
1 / 22