LeetCode:路径总和II【113】
LeetCode:路径总和II【113】
题目描述
给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。
说明: 叶子节点是指没有子节点的节点。
示例:
给定如下二叉树,以及目标和 sum = 22
,
5/ \4 8/ / \11 13 4/ \ / \7 2 5 1
返回:
[[5,4,11,2],[5,8,4,5] ]
题目分析
首先是一个深度搜索,来把所有根节点到叶子节点的路径找出来,然后各自判断是否等于目标值,等于目标值的路径加入结果集中。这种思路是没有问题的,我也很快就写出来了,但是我总觉得递归结束条件太过于简单,但是如果不到叶子节点而中途结束的话,就会忽略一些测试案列。比如到某一节点已经等于目标值,但它不是叶子节点,然而还有可能它的叶子节点值为0对吧,那这也是一条路径,不能忽略。
Java题解
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val = x; }* }*/
class Solution {public List<List<Integer>> pathSum(TreeNode root, int sum) {List<List<Integer>> ans = new ArrayList<>();DFS(ans,new ArrayList<>(),root,sum,sum);return ans;}public void DFS(List<List<Integer>> ans,List<Integer> tmpList,TreeNode node,int sum,int remain){//递归结束条件if(node==null)return;//业务逻辑处理tmpList.add(node.val);remain=remain-node.val;if(remain==0&&node.left==null&&node.right==null){ans.add(tmpList);return;}DFS(ans,new ArrayList<>(tmpList),node.left,sum,remain);DFS(ans,new ArrayList<>(tmpList),node.right,sum,remain);}
}
转载于:https://www.cnblogs.com/MrSaver/p/9956598.html
LeetCode:路径总和II【113】相关推荐
- LeetCode 112. 路径总和 、113. 路径总和 II 思考分析
目录 112. 路径总和 题目 递归解 递归解,其他人的解法 迭代解,其他人的解法 113. 路径总和 II 题目 递归解 递归解,参考别人的思路 112. 路径总和 题目 给定一个二叉树和一个目标和 ...
- Java实现 LeetCode 113 路径总和 II
113. 路径总和 II 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 sum = ...
- 113. 路径总和 II golang
113. 路径总和 II 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 sum = ...
- leetcode113. 路径总和 II
113. 路径总和 II 难度中等163 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标 ...
- 015.路径总和 路径总和II
题目链接: 112. 路径总和 113. 路径总和 II 路径总和: 题目要求: 判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum .如果存在,返回 ...
- LeetCode 113. 路径总和 II(回溯)
文章目录 1. 题目信息 2. 解题 1. 题目信息 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉 ...
- LeetCode——113 路径总和 II(JAVA)
给你二叉树的根节点 root和一个整数目标和 targetSum,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径. 叶子节点 是指没有子节点的节点. 示例 1: 输入:root = [5, ...
- leetcode 113. 路径总和 II
难度:中等 频次:60 题目: 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径. 叶子节点 是指没有子节点的节点. 解 ...
- 54. Leetcode 113. 路径总和 II (二叉树-二叉树路径和)
给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径.叶子节点 是指没有子节点的节点.示例 1: 输入:root = [5, ...
- 【Leetcode】113. 路径总和 II
给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 sum = 22, 5 ...
最新文章
- 安装配置解压版Mysql方法
- 远程控制 vc++实现
- 柳传志给年轻人的建议:比起过日子,更要奔日子
- HDU 1492 The number of divisors(约数) about Humble Numbers
- bzoj1034题解
- Startup Error: Unable to detect graphics environment
- (转)CentOS 和 Ubuntu 下的网络配置
- python典型例题_经典动态规划例题整理(Python版)
- solidworks模板文件_教你如何快速制作工程图模板
- 部分商誉确认法和全部商誉确认法
- linux heartbeat rpm,[原]Heartbeat 3.0.3 介绍及rpm
- 世界观--哲学--抽象--虚无
- kprobe 的 3 种使用
- 从数学计算上分析人脑与电脑差异
- 饼图加引导线_如何在饼形图中添加引导线(Excel)/
- 计算机默认的dns地址怎么找,怎么设置电脑的IP地址与DNS地址
- P2495 [SDOI2011]消耗战-虚树+树形dp
- 酒店管理软件测试用例,酒店管理系统-测试用例.pdf
- 51单片机与SIM800LGSM模块联合,作为安防终端
- 手感虽重要,工具更可靠|SunTorque智能扭矩系统
热门文章
- fast recovery area oracle,oracle Fast Recovery Area的管理
- java矩形类_Java定义矩形类
- Linux 命令之 nohup 后台运行程序,tail 实时查看文件内容
- ProcessBuilder 创建操作系统进程
- 微信支付金额为0.01分报错,和少一分钱的解决办法
- 阶段3 1.Mybatis_02.Mybatis入门案例_2.mybatis入门案例中的设计模式分析
- offset,client,scroll的学习记录
- Java Socket总结
- python 根据字符串语句进行操作再造函数(evec和eval方法)
- 在SharePoint 2010中创建联系人Web数据库网站