在一棵空的二叉排序树中依次插入的关键字序列为12,7,17,11,16,2,9,21,1,23,请根据你构造出来的二叉排序树和下图,完成所有空格。下图中结点旁为空的编号。
时间: 2023-10-12 22:04:37 浏览: 123
很抱歉,我作为一个人工智能无法展示图片,但我可以给你描述一下这棵二叉排序树的结构和节点信息:
根节点为12,左子树的根节点为7,右子树的根节点为17。7的左子树为2,右子树为11。17的左子树为16,右子树为21。16的左子树为NULL,右子树为23。2的左子树为1,右子树为NULL。11的左子树为9,右子树为NULL。21的左子树为NULL,右子树为NULL。所以,这棵二叉排序树的结构如下:
```
12
/ \
7 17
/ \ / \
2 11 16 21
/ \ / \
1 9 NULL 23
```
相关问题
在一棵空的二叉排序树中依次插入关键字序列(12,7,17,11,16,2,13,9,21,4),画出二叉排序树,及对应的平衡二叉树。
二叉排序树的插入过程如下:
首先插入12,得到以下二叉排序树:
```
12
/ \
None None
```
接着插入7,得到以下二叉排序树:
```
12
/ \
7 None
/ \
None None
```
接着插入17,得到以下二叉排序树:
```
12
/ \
7 17
/ \ \
None None None
```
接着插入11,得到以下二叉排序树:
```
12
/ \
7 17
/ \ \
2 11 None
/ / \
None None None
```
接着插入16,得到以下二叉排序树:
```
12
/ \
7 17
/ \ \
2 11 16
/ / \
None 13 None
\
9
/ \
None None
```
接着插入2,得到以下二叉排序树:
```
12
/ \
7 17
/ \ / \
2 11 16 21
/ / / \
None 13 None None
\
9
/ \
None None
```
接着插入13,得到以下二叉排序树:
```
12
/ \
7 17
/ \ / \
2 11 16 21
/ / / / \
None 4 13 None None
/
9
/ \
None None
```
接着插入9,得到以下二叉排序树:
```
12
/ \
7 17
/ \ / \
2 11 16 21
/ / / / \
None 4 13 None None
/
9
/ \
None None
```
接着插入21,得到以下二叉排序树:
```
12
/ \
7 17
/ \ / \
2 11 16 21
/ / / / \
None 4 13 None None
/
9
/ \
None None
```
画出的二叉排序树如下所示:
```
12
/ \
/ \
7 17
/ \ / \
2 11 16 21
/ \ \
None 13 None
/ \
9 None
/ \
None None
```
接下来可以进行平衡化处理,得到平衡二叉树:
```
11
/ \
/ \
7 16
/ \ / \
2 9 13 17
/ \
4 21
```
在一个空的二叉排序树中依次插入关键字序列为12,7,17,11,16,2,13,9,21,4,请画出所得到的二叉排序树。
依次插入关键字序列12,7,17,11,16,2,13,9,21,4,得到的二叉排序树如下图所示:
```
12
/ \
7 17
/ \ / \
2 11 13 21
/ \
9 16
/
4
```
解释:首先将12作为根节点插入,然后7比12小,所以插入7的左子树中,17比12大,所以插入17的右子树中,11比7大但比12小,所以插入11的左子树中,16比12大但比17小,所以插入16的右子树中,2比7小,所以插入2的左子树中,13比12大但比17小,所以插入13的右子树中,9比7大但比11小,所以插入9的左子树中,21比17大,所以插入21的右子树中,4比2大,所以插入4的右子树中。最终得到的二叉排序树满足左子树中的所有关键字均小于根节点,右子树中的所有关键字均大于根节点。