2024年2月4日发(作者:)
二叉树的三种遍历方式(先序中序后序)代码实现
1.先序遍历:
先序遍历是指先访问根节点,再访问左子树,最后访问右子树。具体步骤如下:
-访问根节点。
-递归先序遍历左子树。
-递归先序遍历右子树。
先序遍历的代码实现如下:
```python
class Node:
def __init__(self, data):
= data
= None
= None
def pre_order_traversal(root):
if root:
print(, end=' ')
pre_order_traversal()
pre_order_traversal()
#创建二叉树
root = Node(1)
= Node(2)
= Node(3)
= Node(4)
= Node(5)#调用先序遍历函数
print("先序遍历结果:")
pre_order_traversal(root)```
输出结果为:12453
2.中序遍历:
中序遍历是指先访问左子树,再访问根节点,最后访问右子树。具体步骤如下:
-递归中序遍历左子树。
-访问根节点。
-递归中序遍历右子树。
中序遍历的代码实现如下:
```python
def in_order_traversal(root):
if root:
in_order_traversal()
print(, end=' ')
in_order_traversal()
#调用中序遍历函数
print("中序遍历结果:")
in_order_traversal(root)
```
输出结果为:42513
3.后序遍历:
后序遍历是指先访问左子树,再访问右子树,最后访问根节点。具体步骤如下:
-递归后序遍历左子树。
-递归后序遍历右子树。
-访问根节点。
后序遍历的代码实现如下:
```python
def post_order_traversal(root):
if root:
post_order_traversal()
post_order_traversal()
print(, end=' ')
#调用后序遍历函数
print("后序遍历结果:")
post_order_traversal(root)
```
输出结果为:45231
以上就是对于二叉树的三种遍历方式(先序、中序、后序)的详细介绍和代码实现。通过不同的遍历方式,可以对二叉树的节点以不同的顺序进行访问,从而实现不同的操作。
本文发布于:2024-02-04 01:30:22,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170698142251936.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |