推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 来财好运猪 > 深度优先搜索(二)

深度优先搜索(二)

来财好运猪 2021-04-08

最近的状态:好好工作,好好生活,心态稳定。


晚上早点回来,就多刷了两道。

贴一下这个第113题



1、题目描述


2、思路和实现

这道题刷过好几次了,所以已经轻车熟路了。

算得上要思考一下的,就是path要删掉当前节点的值,进行回溯。上一篇文章中说得深度优先遍历的介绍还是得好好理解才行,算法的核心思路理解了,刷到这类题就简单很多。


class Solution { List<List<Integer>> result = new ArrayList<>(); List<Integer> path = new ArrayList();
public List<List<Integer>> pathSum(TreeNode root, int targetSum) { if(root == null) { return result; }
path.add(root.val); targetSum -= root.val;
if(targetSum == 0 && root.left == null && root.right == null) { result.add(new ArrayList(path)); }
pathSum(root.left, targetSum); pathSum(root.right, targetSum); // 回溯 path.remove(path.size() - 1); return result; }}


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《深度优先搜索(二)》的版权归原作者「来财好运猪」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注来财好运猪微信公众号

来财好运猪微信公众号:laicai_2020

来财好运猪

手机扫描上方二维码即可关注来财好运猪微信公众号

来财好运猪最新文章

精品公众号随机推荐