6.10二叉树的所有路径(LC257-E,不太会)

news2024/9/22 5:30:47

算法:

前序遍历:

因为要让父节点指向孩子节点,才能输出路径。

递归与回溯相辅相成,只要有递归,就一定有回溯。

举个例子理解一下:

中:先push入1

左:再Push入2

右:再Push入5 \\1->2->5

回溯:

pop 5

pop 2

到1的时候,再push入3 \\1->3

正确代码(还是不太懂)

`cur`(当前正在访问的节点)、`path`(用于存储当前路径的列表)和`result`(用于存储最终结果的列表)。

# # Definition for a binary tree node.
# # class TreeNode(object):
# #     def __init__(self, val=0, left=None, right=None):
# #         self.val = val
# #         self.left = left
# #         self.right = right
class Solution(object):
    def binaryTreePaths(self, root):
        """
        :type root: TreeNode
        :rtype: List[str]
        """
        result = []
        path = []
        if root == None:
            return result
        else:
            self.travasal(root, path, result)
            return result

    def travasal(self, cur, path, result):
        #`cur`(当前正在访问的节点)
        #`path`(用于存储当前路径的列表)
        #`result`(用于存储最终结果的列表)
        #中:把cur加入path中
        path.append (cur.val)
        #首先判断是否为叶子节点
        if cur.left == None and cur.right == None:
            paths = "->".join(map(str,path))
            result.append(paths)
            #无返回值
            return 
            #左
        if cur.left != None:
            self.travasal(cur.left, path, result)
            path.pop()#回溯
            #右
        if cur.right != None:
            self.travasal(cur.right, path, result)
            path.pop()#回溯



        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1229262.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux系统编程 day03 Makefile、gdb、文件IO

Linux系统编程 day03 Makefile、gdb、文件IO 1. Makefile2. gdb3. 文件IO 1. Makefile Makefile文件中定义了一系列规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至更加复杂的功能操作。Makefile就像一个shell脚…

详解“协方差”与“相关系数”

引言 PCA的目标对象是矩阵,例如,有m个样本,每个样本有n个特征,那么就可以构造成一个样本矩阵,并转换成矩阵的形式。 PCA的最终目的是减少特征的个数,去掉那些不重要的特征,也就是减小矩阵列向量…

【LeetCode:689. 三个无重叠子数组的最大和 | 序列dp+前缀和】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

在回调之间共享数据

可以在 App 中为 UI 组件编写回调函数,以指定用户与其交互时的行为方式。 在具有多个相互依赖的 UI 组件的 App 中,回调函数通常必须访问主 App 函数中定义的数据,或与其他回调函数共享数据。例如,如果创建一个具有列表框的 App&a…

vue 如何实现粘贴复制功能

实现粘贴复制功能 vue 实现粘贴复制功能,也可用于app中h5插件,共四种方法,特别推荐第四种方法,具体还需了解根据需求使用 1. 安装第三方插件方法(不推荐) 这种方法兼容性很好,如果项目只使用了…

如何自己生成fip.bin在Milkv-duo上跑freertos

前言 (1)PLCT实验室实习生长期招聘:招聘信息链接 (2)本来是要跑RT-Thread的,搞了很久,一直没成功。哭死,后面mentor通电话,让我先跑一下freertos试试。有可能是因为RT-Th…

这5款好用的app,能让你生活质量和效率飙升

随着科技的进步和智能手机的普及,不少好用的手机APP出现让我们的生活更加便捷,也提升了我们的生活质量,带给我们不少惊喜。接下来,让我们一起探索这5款实用APP,看看有没有适合你的! 1、粉笔 一款专门备考…

全屋智能:鱼很大,但水更深

1990年,作为世界首富的比尔盖茨,已经对智能家居生活有了明确畅想。他花了7年时间,耗资1亿多美元,在美国西雅图的华盛顿湖东岸,建了一座占地6600平方米的湖滨别墅。在这座被命名为“未来之屋”的豪宅里,到处…

暖阳脚本_ 将Agent技术的灵活性引入RPA,清华等发布自动化智能体ProAgent

RPA暖阳脚本 近日,来自清华大学的研究人员联合面壁智能、中国人民大学、MIT、CMU 等机构共同发布了新一代流程自动化范式 “智能体流程自动化” Agentic Process Automation(APA),结合大模型智能体帮助人类进行工作流构建&#x…

OTP语音芯片 NV080D在智能空气检测仪的应用

随着人们对健康和环保的关注度不断提高,人们对看不见的家居环境也越来越重视。智能空气检测仪的市场需求也在不断增长中,呈现稳中向好的趋势。智能空气检测仪能够检测室内空气中的PM2.5、甲醛、TVOC等有害物质,同时还可以检测温湿度、空气质量…

亚马逊云科技帮助客户在云中构建具有高可靠性和韧性的应用程序

在一个理想的世界里,一切都非常完美,并且一直都在顺畅运作。早晨的通勤没有交通堵塞,最喜欢的停车位一直空着,一杯温度适宜的饮料,生活一帆风顺,没有任何中断。在需要时,您能得到所需的东西。但…

如何简单挖掘公益SRC?

目录 1、寻找漏洞 1)谷歌语法 2)fofa 2、挖掘漏洞 3、提交报告 第一步:“标题”和“厂商信息”和“所属域名” 第二步:其它内容 第三步:复现步骤 0、IP域名归属证明 1、漏洞页 2、该干啥 3、注入的结果 4、上榜吉时 时间&#x…

多视图聚类的论文阅读(一)

当聚类的方式使用的是某一类预定义好的相似性度量时, 会出现如下情况: 数据聚类方面取得了成功,但它们通常依赖于预定义的相似性度量,而这些度量受原始方法的影响:当输入维数相对较高时,往往是无效的。 1. Deep Mult…

asp.net校园二手交易平台系统VS开发sqlserver数据库web结构c#编程计算机网页

一、源码特点 asp.net校园二手交易平台系统 是一套完善的web设计管理系统,系统采用mvc模式(BLLDALENTITY)系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 vs2010,数据库为sqlserver2008&a…

网络渗透测试(TCP/IP)理论篇

TCP/IP体系 垂直服务:底层为高层服务 TCP/IP体系结构是一个分层的协议体系,由多个层次组成,每个层次都负责不同的功能。以下是TCP/IP体系结构的主要层次: 物理层(Physical Layer):该层负责传输…

15篇MyBatis-Plus系列集合篇「值得收藏学习」

历史文章(文章累计490) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 M…

向量数据库——AI时代的基座

1.前言 向量数据库在构建基于大语言模型的行业智能应用中扮演着重要角色。大模型虽然能回答一般性问题,但在垂直领域服务中,其知识深度、准确度和时效性有限。为了解决这一问题,企业可以利用向量数据库结合大模型和自有知识资产,…

金属压块液压打包机比例阀放大器

液压打包机是机电一体化产品,主要由机械系统、液压控制系统、上料系统与动力系统等组成。整个打包过程由压包、回程、提箱、转箱、出包上行、出包下行、接包等辅助时间组成。市场上液压打包机主要分为卧式与立式两种,立式废纸打包机的体积比较小&#xf…

释放固态继电器的力量:主要优势和应用

固态继电器(SolidStateRelay,缩写SSR),是由微电子电路,分立电子器件,电力电子功率器件组成的无触点开关。用隔离器件实现了控制端与负载端的隔离。固态继电器的输入端用微小的控制信号,达到直接…

wvp gb28181 pro 推流列表功能

界面截图 功能说明 功能演示 客户端推流 ​​​​​​​手机端,使用芯象软件进行推流,支持ios、android 推流地址使用如下格式: rtsp://192.168.4.116:554/live/123?secret035c73f7-bb6b-4889-a715-d9eb2d1925cc 详细操作教程参考 【腾讯文…