依次输入表(30, 15, 28,20,24, 10, 12,68,35,50,46,55)中的元素,生成一棵二叉排序树,要 求: 1、试画出生成之后的二叉排序树。 2、对该二叉排序数作中根遍历,写出遍历序列。 3、编程构建一个二叉排宇树,并中根遍历验证上述结果。 要求: 1、上述作业要求单独完成; 2、完成后,于规定期限内将源代码提交到fp 服务器的相应目录中
时间: 2024-02-20 20:56:53 浏览: 22
1. 生成的二叉排序树如下图所示:
```
30
/ \
15 35
/ \ \
10 20 68
/ \
12 24
/ \
46 55
\
50
```
2. 中根遍历序列为:10 12 15 20 24 30 35 46 50 55 68
3. 以下是 Python 代码实现:
```python
# 定义二叉排序树的节点
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
# 将元素插入二叉排序树
def insert_node(root, val):
if not root:
return TreeNode(val)
if val < root.val:
root.left = insert_node(root.left, val)
elif val > root.val:
root.right = insert_node(root.right, val)
return root
# 中根遍历二叉排序树
def inorder_traversal(root):
if not root:
return
inorder_traversal(root.left)
print(root.val, end=' ')
inorder_traversal(root.right)
# 构建二叉排序树并验证
if __name__ == '__main__':
nums = [30, 15, 28, 20, 24, 10, 12, 68, 35, 50, 46, 55]
root = None
for num in nums:
root = insert_node(root, num)
inorder_traversal(root) # 输出:10 12 15 20 24 30 35 46 50 55 68
```
注意:此代码仅供参考,不保证在所有情况下都能正确运行。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)