#LEETCODE112. 題目:路徑總和(Path Sum)

題目:路徑總和(Path Sum)

題目名稱:路徑總和(Path Sum)

題目描述:

給定一棵二叉樹以及一個整數 S,請判斷是否存在一條從根節點到葉子節點的路徑,使得路徑上所有節點的數值總和等於 S

一個「葉子節點」是指沒有左子節點和右子節點的節點。


輸入格式:

輸入共三行:

  • 第一行為一個整數 n(1 ≤ n ≤ 5000),表示層序遍歷中節點(含 null 占位)的總個數。

  • 第二行為 n 個字串,以空格分隔,代表一棵二叉樹的層序遍歷

    • 空節點以 null 表示。
    • 非空節點為整數,代表節點的數值。
  • 第三行為一個整數 S,表示目標總和。


輸出格式:

若存在一條根到葉子的路徑,其上節點數值加總為 S,輸出 true(小寫);否則輸出 false


輸入範例 1:

img

13
5 4 8 11 null 13 4 7 2 null null null 1
22

輸出範例 1:

true

輸入範例 2:

img

3
1 2 3
5

輸出範例 2:

false

輸入範例 3:

1
null
0

輸出範例 3:

false

資料範圍與限制:

  • 1 ≤ n ≤ 5000,節點總數(含 null)不超過 5000。
  • 節點值為整數,範圍:−1000 ≤ 節點值 ≤ 1000。
  • 目標總和 S 的範圍為:−1000 ≤ S ≤ 1000。