当前位置: 首页 > news >正文

257. 二叉树的所有路径(递归+回溯)

257. 二叉树的所有路径

力扣题目链接(opens new window)

给定一个二叉树,返回所有从根节点到叶子节点的路径。

说明: 叶子节点是指没有子节点的节点。

示例: 

257.二叉树的所有路径1

思路:在叶子节点收割结果,如果不是叶子节点,则依次处理左右子树,在处理左右子树的具体逻辑里递归+回溯 

 

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def binaryTreePaths(self, root: Optional[TreeNode]) -> List[str]:
        result = []
        if root is None:
            return result
        path = []
        self.backtracking(root, path, result)
        return result


    def backtracking(self, root: Optional[TreeNode], path, result) -> None:
        path.append(root.val)
        if root.left is None and root.right is None:
            path_str = ''
            for i in range(len(path) - 1):
                path_str += f'{path[i]}->'
            path_str += f'{path[-1]}'
            result.append(path_str)
            return
        if root.left is not None:
            self.backtracking(root.left, path, result)
            path.pop()
        if root.right is not None:
            self.backtracking(root.right, path, result)
            path.pop()
        return
        
http://www.dtcms.com/a/64684.html

相关文章:

  • 树莓派 调用摄像头
  • clickhouse集群部署保姆级教程
  • C++相关数据结构的API调用
  • qemu-kvm源码解析-内存虚拟化
  • CUDA error code 201:invalid device context
  • 《灵珠觉醒:从零到算法金仙的C++修炼》卷三·天劫试炼(32)万剑归宗破妖阵 - 最长递增子序列(LIS)
  • 有哪些好用的AI视频加工创作网站
  • SpringBoot整合JPA
  • 使用 ConfigMaps 可以优化 Spring Boot应用
  • 08 | 实现版本号打印功能
  • 线索二叉树构造及遍历算法
  • Day 14: 从上到下打印二叉树
  • Android启动速度优化
  • STM32单片机FreeRTOS系统11 系统时钟节拍和时间管理,定时器组
  • 基于小波分析法的行波测距判断故障及定位故障Matlab仿真
  • std::ranges::views::split, lazy_split, std::ranges::split_view, lazy_split_view
  • vs2022用git插件重置--删除更改(--hard)后恢复删除的内容
  • 深入解析Go语言Channel:源码剖析与并发读写机制
  • 高级定时器的解码器模式
  • upload-labs-靶场(1-19关)通关攻略
  • python-leetcode 50.岛屿数量
  • 颤抖:quiver,shiver,tremble的区别
  • 火绒终端安全管理系统V2.0--分层防御之行为拦截层
  • Benewake(北醒) 快速实现TF-NOVA IIC接口与电脑通信的操作说明
  • 电子文档安全管理系统 V6.0 resources/backup存在任意文件下载漏洞(DVB-2025-8794)
  • 数据结构与算法:归并排序
  • AIM-T500绝缘监测仪:实时监测,确保IT系统绝缘安全-安科瑞 蒋静
  • 2025-03-12 学习记录--C/C++-PTA 习题10-11 有序表的增删改查操作
  • 论数组去重之高效方法
  • ai讲angular rxjs