給定乙個二叉樹和乙個目標和,判斷該樹中是否存在根節點到葉子節點的路徑,這條路徑上所有節點值相加等於目標和。
說明: 葉子節點是指沒有子節點的節點。
示例:給定如下二叉樹,以及目標和 sum = 22,
5/ \
4 8
/ / \
11 13 4
/ \ \
7 2 1
返回 true, 因為存在目標和為 22 的根節點到葉子節點的路徑 5->4->11->2
/**
* definition for a binary tree node.
* public class treenode
* }*/class solution
//葉子結點+遞迴出口
if(null==root.left && null==root.right)
return haspathsum(root.left, sum-root.val) || haspathsum(root.right, sum-root.val);
}}
25 路徑總和
題目描述 我的思路 首先檢視的是根節點,然後用num 根節點的值,並且要考慮到節點是否為空 需要注意的是這裡的遞迴要注意,二叉樹基本都是遞迴來實現 再一次使用遞迴 public static boolean haspathsum treenode root,int sum else return h...
112 路徑總和
給定乙個二叉樹和乙個目標和,判斷該樹中是否存在根節點到葉子節點的路徑,這條路徑上所有節點值相加等於目標和。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和sum 22,5 48 1113 4 721返回true,因為存在目標和為 22 的根節點到葉子節點的路徑5 4 11 2。d...
112 113 路徑總和
遞迴,終止條件為當左節點為空 右為空且sum減去當前節點的值為0是,才返回true 和112題類似,只不過在dfs時要記錄每乙個路徑 class solution object def pathsum self,root,sum res if not root return def helper r...