1. 编写程序,创建二叉树,对二叉树进行先序遍历,并打印层号。(必做题)
时间: 2024-01-23 18:13:03 浏览: 68
二叉树的基本操作
好的,这是一道关于二叉树的基础编程题目,下面是示例代码:
```python
# 定义二叉树节点类
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
# 先序遍历并打印层号
def pre_order(root, depth):
if not root:
return
print(f"层号: {depth}, 节点值: {root.val}")
pre_order(root.left, depth+1)
pre_order(root.right, depth+1)
# 创建二叉树
def create_tree():
# 输入节点值,用 None 表示空节点
val = input("请输入节点值(空节点用 None 表示):")
if val == "None":
return None
root = TreeNode(int(val))
root.left = create_tree()
root.right = create_tree()
return root
# 测试代码
if __name__ == '__main__':
root = create_tree()
pre_order(root, 1)
```
在运行程序时,会要求您逐个输入节点值,其中用 None 表示空节点。程序会根据输入的节点值创建二叉树,并对其进行先序遍历,并打印出每个节点的层号和节点值。
阅读全文