[LeetCode]路径和
来源:互联网 发布:大话数据结构知乎 编辑:程序博客网 时间:2024/05/17 19:56
问题:给定一颗二叉树和一个值,判断是否存在从根节点到叶子节点的路径和等于给定的值。
分析:题目并未说明该二叉树是二叉搜索树,所以认为是一个普通的二叉树。可以采用递归的方式解答,首先判断当前遍历节点的值与之前的遍历过节点的和是否等于给定的值,如果等于且左右孩子节点为null,则认为存在这样的一条路径,使得从根节点到叶子节点这条路径的和等于给定的值。如果不等于,则遍历左子树和右子树,如果其中一个遍历的结果相等,则返回true。
代码如下:
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Solution { int sum_save=0; public boolean hasPathSum(TreeNode root, int sum) { if(root==null) return false; sum_save+=root.val; if(sum_save==sum&&root.left==null&&root.right==null) return true; if(sum-sum_save!=0){ return hasPathSum(root.left,sum_save)||hasPathSum(root.right,sum_save); //hasPathSUm(root.right) } return false; }}
阅读全文
0 0
- [LeetCode]路径和
- [LeetCode]路径和2
- LeetCode Path Sum 路径和
- [LeetCode] 路径和 Path Sum
- leetcode Path Sum 路径和
- leetcode之路径和递归
- Path Sum 二叉树路径和 @LeetCode
- LeetCode Path Sum II路径和II
- Triangle 三角形求最小路径和 @LeetCode
- [leetcode]Minimum Path Sum 最小路径和
- Leetcode:Minimum Path Sum 最小路径和
- LeetCode | Path Sum(路径和)
- LeetCode | Triangle(三角形路径和)
- Triangle 三角形求最小路径和 @leetcode
- Leetcode 120 Triangle 三角形最小路径和
- 【LeetCode】triangle求最小和路径
- Leetcode笔记—最大路径和
- LeetCode 112. Path Sum(路径和)
- 初学者对Struts2+Spring集成的理解
- 课堂随记20170626
- 机器学习:GBDT和XGBoost的区别
- DXP
- Java中String,StringBuffer,StringBuilder之间的区别
- [LeetCode]路径和
- 选择排序
- Markdown 学习
- XL3常用MAC使用快捷键及使用技巧
- JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式)
- HDU 2588 数论 欧拉函数
- LeetCode hard 4. Median of Two Sorted Arrays
- jquery对表单元素的取值和赋值
- bzoj 3444: 最后的晚餐