华为机试真题python实现 二叉树的中序遍历
时间: 2023-11-14 19:05:55 浏览: 129
二叉树的中序遍历是指按照左子树、根节点、右子树的顺序遍历二叉树。对于给定的二叉树,可以通过递归的方式来实现中序遍历。具体步骤如下:
1. 如果当前节点为空,则返回。
2. 递归遍历当前节点的左子树。
3. 访问当前节点。
4. 递归遍历当前节点的右子树。
以下是华为机试真题python实现二叉树的中序遍历的代码示例:
```
class Node:
def __init__(self, val):
self.val = val
self.left = None
self.right = None
def inorderTraversal(root):
if not root:
return []
result = []
stack = []
while root or stack:
while root:
stack.append(root)
root = root.left
root = stack.pop()
result.append(root.val)
root = root.right
return result
# 测试代码
root = Node(1)
root.right = Node(2)
root.right.left = Node(3)
result = inorderTraversal(root)
print(result)
```
阅读全文