博客
关于我
数据结构 python3 二叉树遍历 前序 中序 后序
阅读量:341 次
发布时间:2019-03-04

本文共 909 字,大约阅读时间需要 3 分钟。

二叉树遍历示例

以下是二叉树的前序、中序和后序遍历示例代码及输出结果。

前序遍历示例

前序遍历的定义是先访问左子树,后访问右子树。以下是代码示例:

def inorderTraversal(self, root: TreeNode) -> List[int]:    res = []    def dfs(root):        if not root:            return        res.append(root.val)        dfs(root.left)        dfs(root.right)    dfs(root)    return res

代码执行后输出结果为:[0, 1, 3, 4, 2]。

中序遍历示例

中序遍历的定义是先访问左子树,后访问右子树。以下是代码示例:

def inorderTraversal(self, root: TreeNode) -> List[int]:    res = []    def dfs(root):        if not root:            return        dfs(root.left)        res.append(root.val)        dfs(root.right)    dfs(root)    return res

代码执行后输出结果为:[3, 1, 4, 0, 2]。

后序遍历示例

后序遍历的定义是先访问左子树,后再访问右子树。以下是代码示例:

def inorderTraversal(self, root: TreeNode) -> List[int]:    res = []    def dfs(root):        if not root:            return        dfs(root.left)        dfs(root.right)        res.append(root.val)    dfs(root)    return res

代码执行后输出结果为:[3, 4, 1, 2, 0]。

转载地址:http://qdce.baihongyu.com/

你可能感兴趣的文章
ollama本地部署DeepSeek(Window图文说明)
查看>>
onCreate()方法中的参数Bundle savedInstanceState 的意义用法
查看>>
one_day_one--mkdir
查看>>
ONI文件生成与读取
查看>>
oobbs开发手记
查看>>
OpenCV 中的图像转换
查看>>
opencv&Python——多种边缘检测
查看>>
OpenCV-Python接口、cv和cv2的性能比较
查看>>
opencv26-模板匹配
查看>>
opencv32-基于距离变换和分水岭的图像分割
查看>>
opencv4-图像操作
查看>>
opencv5-图像混合
查看>>
opencv9-膨胀和腐蚀
查看>>
OpenCV与AI深度学习 | YOLO11介绍及五大任务推理演示(目标检测,图像分割,图像分类,姿态检测,带方向目标检测)
查看>>
OpenCV与AI深度学习 | 使用Python和OpenCV实现火焰检测(附源码)
查看>>
OpenCV与AI深度学习 | 使用YOLO11实现区域内目标跟踪
查看>>
OpenCV与AI深度学习 | 使用YOLOv8做目标检测、实例分割和图像分类(包含实例操作代码)
查看>>
OpenCV与AI深度学习 | 基于GAN的零缺陷样本产品表面缺陷检测
查看>>
OpenCV与AI深度学习 | 基于OpenCV和深度学习预测年龄和性别
查看>>
OpenCV与AI深度学习 | 基于Python和OpenCV将图像转为ASCII艺术效果
查看>>