【亡羊补牢】挑战数据结构与算法 第42期 LeetCode 257. 二叉树的所有路径(二叉树)
发布日期:2021-06-29 14:34:22
浏览次数:3
分类:技术文章
本文共 1120 字,大约阅读时间需要 3 分钟。
仰望星空的人,不应该被嘲笑
题目描述
给定一个二叉树,返回所有从根节点到叶子节点的路径。
说明: 叶子节点是指没有子节点的节点。
示例:
输入: 1 / \2 3 \ 5输出: ["1->2->5", "1->3"]解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/binary-tree-paths 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。解题思路
dfs
,从根节点开始搜,对于非叶子节点,进行累计,如果找到了叶子节点,我们就将结果存起来。通过字符串拼接来存储路径。
/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {TreeNode} root * @return {string[]} */var binaryTreePaths = function (root) { if (root == null) return []; let res = []; let dfs = (cur, root) => { // 叶子节点,存起来 if (root.left == null && root.right == null) { cur += root.val; res.push(cur); return; } cur += root.val + '->'; // 处理非叶子节点 // 先遍历左子树,再遍历右子树 root.left && dfs(cur, root.left); root.right && dfs(cur, root.right); } dfs('', root); return res;};
最后
文章产出不易,还望各位小伙伴们支持一波!
往期精选:
小伙伴们可以在Issues中提交自己的解题代码,🤝 欢迎Contributing,可打卡刷题,Give a ⭐️ if this project helped you!
,方便小伙伴阅读玩耍~
学如逆水行舟,不进则退
转载地址:https://chocolate.blog.csdn.net/article/details/108790272 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月12日 02时04分26秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
IT人的八大修炼神器
2019-04-29
设计和实现一款轻量级的爬虫框架
2019-04-29
域名劫持
2019-04-29
程序员幸福指南
2019-04-29
你所不知道的库存超限做法
2019-04-29
文末福利 | 只送给真正想学英语的你!
2019-04-29
cdn技术原理
2019-04-29
日志系统诞生记
2019-04-29
为什么程序员加班有罪?
2019-04-29
不用加法求两数之和
2019-04-29
微服务架构下的测试之道
2019-04-29
二月送书
2019-04-29
当下火热的大数据视频,免费送(含源码)
2019-04-29
秒杀安全
2019-04-29
我的六年程序生涯
2019-04-29
一张图看懂马斯克
2019-04-29
马斯克:SpaceX成功的背后,经历了18次失败、被骂是骗子、几近破产
2019-04-29
面试官最讨厌的三种求职者
2019-04-29
电子商务网站是这样诞生的
2019-04-29
荐号 | 技术人如何在职场竞争中处于优势地位
2019-04-29