題目描述
給定一個二叉樹假勿,它的每個結(jié)點都存放一個 0-9 的數(shù)字借嗽,每條從根到葉子節(jié)點的路徑都代表一個數(shù)字。
例如转培,從根到葉子節(jié)點路徑 1->2->3 代表數(shù)字 123恶导。
計算從根到葉子節(jié)點生成的所有數(shù)字之和。
說明: 葉子節(jié)點是指沒有子節(jié)點的節(jié)點浸须。
思路解析
先序遍歷惨寿,在葉子的時候判斷邦泄,更新和
class Solution:
def sumNumbers(self, root):
self.res = 0
def helper(root, temp):
if not root:
return
if not root.left and not root.right:
self.res += int(temp + str(root.val))
helper(root.left, temp + str(root.val))
helper(root.right, temp + str(root.val))
helper(root, "")
return self.res
image.png