博客
关于我
数据结构 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/

你可能感兴趣的文章
Python 中如何创建多行字符串?
查看>>
Python 中如何处理异常?
查看>>
Python 中如何实现列表的切片?
查看>>
Python 中如何实现字典的排序?
查看>>
Python 中常用的数据类型及相关操作详解
查看>>
python 中文乱码
查看>>
Python 中生成器与普通函数的区别
查看>>
Python 中的 *tuple 和 **dict 是什么意思?
查看>>
Python 中的 filter() 函数:筛选可迭代对象元素
查看>>
Python 中的 Pillow 不允许我打开图像(“超出限制“)
查看>>
Python 中的 threading 模块和 multiprocessing 模块有何区别?
查看>>
Python 中的 threading 模块和 multiprocessing 模块有何区别?
查看>>
Python 中的 Turtle 库详解
查看>>
Python 中的 __slots__ 属性有什么作用?
查看>>
Python 中的... 三点、箭头(->)、/ 分别的作用
查看>>
python读取json数据的id_python处理JSON数据
查看>>
Python 中的Duck Typing
查看>>
Python 中的for in 遍历生成字典、添加判断条件if
查看>>
Python 中的Lock与RLock
查看>>
Python 中的range(),arange()函数
查看>>