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

【LeetCode】二叉树的递归遍历

题目

  1. 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。

算法与思路

Preorder traversal order:

  1. Visit the current node.
  2. Traverse the left subtree.
  3. Traverse the right subtree.
    在这里插入图片描述
    在这里插入图片描述

Returns:
list: A list of integers representing the preorder traversal.

代码

  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 preorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
            if not root:
                return []
            return [root.val] + self.preorderTraversal(root.left) + self.preorderTraversal(root.right)
            
    
  2. 中序(同理)

    # 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 inorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
            if not root:
                return []
            return self.inorderTraversal(root.left) + [root.val] + self.inorderTraversal(root.right)
        
    
  3. 后序(同理)

    class Solution:
    def postorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
        if not root:
            return []
        return self.postorderTraversal(root.left) + self.postorderTraversal(root.right) + [root.val]
    

总结

相关文章:

  • promise使用及其方法
  • CMake在Windows环境下Visual Studio Code的使用
  • 利用deepseek直接调用其他文生图网站生成图片
  • [VolgaCTF 2025] Baby-Welcome,BrokeBroke,Field Rules
  • nginx的自定义日志
  • 爬虫:网络请求(通信)步骤,http和https协议
  • C++算法——分治
  • MVC编程
  • Web网页内嵌 Adobe Pdf Reader 谷歌Chrome在线预览编辑PDF文档
  • 程序化广告行业(46/89):竞价结算规则、底价策略与内部排名解析
  • WPF 自定义路由事件
  • 题解:蓝桥杯 2023 省 B 接龙数列 - dp + 哈希map
  • 高通Android 8.1/9/10/11/12/13 通过包名设置默认launcher
  • [MySql] 多表关系, 多表查询
  • 消息中心系统架构设计
  • 14 配置Hadoop集群-配置历史和日志服务
  • Zemax与Matlab交互:双胶合优化详细流程
  • Qt图形化界面为何总被“冷落“?
  • IPv6协议
  • STM32 ADC转换完成回调函数详解 HAL_ADC_ConvCpltCallback与HAL_ADC_ConvHalfCpltCallback
  • 同一个wifi下_我如何用手机访问我用我电脑做服务器的网站/企业网站设计图片
  • 石家庄网站建设备案/网络营销软件条件
  • 网站营销推广怎么做/十八大禁用黄app入口
  • 新城疫怎么治疗/商丘seo公司
  • 网页制作素材网站推荐/如何优化关键词排名到首页
  • 昆明网站排名/成都seo优化