112.Path Sum

Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.

For example:
Given the below binary tree and sum = 22,

              5
             / \
            4   8
           /   / \
          11  13  4
         /  \      \
        7    2      1

return true, as there exist a root-to-leaf path 5->4->11->2 which sum is 22.

  • 題目大意:從給定的二叉樹中找到root - to -leaf的path,并且path上面的數字之和等于給定的sum。
public class PathSum {
    public boolean hasPathSum(TreeNode root, int sum) {
        if (root == null)
            return false;

        //如果左右結點為null,此時到達葉子結點
        if (root.left == null && root.right == null && sum - root.val == 0)
            return true;

        //遞歸判斷
        return hasPathSum(root.left, sum - root.val) || hasPathSum(root.right, sum - root.val);
    }

    public class TreeNode {
        int val;
        TreeNode left;
        TreeNode right;
        TreeNode(int x) { val = x; }
    }
}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 背景 一年多以前我在知乎上答了有關LeetCode的問題, 分享了一些自己做題目的經驗。 張土汪:刷leetcod...
    土汪閱讀 12,769評論 0 33
  • 不必泥足深陷,那樣沒意義。
    weisidy閱讀 230評論 0 0
  • 假如生活欺騙了你,那你就把它當做一個善意的謊言,因為生活是磨練每個人生的寬廣大路。 難免出現的磕磕絆絆,時常會來的...
    御龍曉康閱讀 203評論 1 0
  • 原創/海里有我的名字 一杯清茶焦入味,空晃黑影落沉香。 五角星的暗淡,掩飾不住光明,我在這里細細品嘗你的焦味和你的...
    海里有我的名字閱讀 299評論 0 1