112.[Leetcode]Path Sum
2016-05-18 16:28
246 查看
题意:
求给定一个树,是否存在一个路径可以产生一个给定的值递归:
public class Solution { public boolean hasPathSum(TreeNode root, int sum) { if (root == null) return false; // 边际条件 else { // 一个节点是叶子节点的充分条件是 自己不为NULL,且两个子节点为NULL、 if(root.left == null && root.right == null) return sum == root.val; // 如果两个子节点都不为空,那么就返回两个的或,即是其中有一个是真则为真 else if(root.left != null && root.right != null) return hasPathSum(root.left,sum-root.val) || hasPathSum(root.right,sum-root.val); //如果只有一个方向不为null,那么久返回这个方向 else if(root.left != null && root.right == null) return hasPathSum(root.left,sum-root.val); else return hasPathSum(root.right,sum-root.val); } } }
相关文章推荐
- UVAlive 7041 The Problem to Slow Down You(回文树)
- Oracle几个基础配置问题:ORA-12154: TNS: 无法解析指定的连接标识符、ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务、ORA-12516 TNS监听程序找不到符合协议堆栈要求的可用处理程序
- //封装tabs函数
- 40个Java多线程问题总结
- ReentrantLock实现原理深入探究
- iOS开发小技巧--修改按钮内部图片和文字之间的间距(xib)
- 处理千万级以上的数据提高查询速度的方法(转)
- Java中StringBuilder字符串类型的操作方法及API整理
- 深入理解JavaScript中的对象复制(Object Clone)
- linux下configure,make,make install的意义
- HDOJ/HDU 2562 奇偶位互换(交换位置~)
- StarWind
- 批处理 安卓一键打包脚本快速解析
- HDOJ/HDU 2562 奇偶位互换(交换位置~)
- Windows YII2安装
- Codeforces Round #353 (Div. 2)
- Unsafe与CAS
- 226. Invert Binary Tree
- js验证框架实现代码分享
- js file选择图片后回显 方法