.给出一组关键字(12,2,16,30,8,28,4,10,20,6,18) (1)以该序列为输入序列构造二叉排序树 (2)按从小到大顺序,写出对其进行快速排序第一趟(轴元素为第一个元素)的排序过程。
时间: 2023-08-14 18:06:27 浏览: 152
(1) 构造二叉排序树的过程如下:
```
12
/ \
2 16
\ / \
8 10 30
/ \ / \
4 6 20 28
\
18
```
(2) 进行快速排序的第一趟时,选择第一个元素 12 作为轴元素(pivot),排序过程如下:
```
原始序列:12, 2, 16, 30, 8, 28, 4, 10, 20, 6, 18
轴元素:12
第一趟排序过程:
12, 2, 8, 4, 10, 6, 16, 30, 28, 20, 18
左子序列:2, 8, 4, 10, 6
右子序列:16, 30, 28, 20, 18
```
经过第一趟排序后,轴元素 12 已经被放到了正确的位置上,原序列被划分成了两个子序列,左子序列中的元素均小于轴元素,右子序列中的元素均大于轴元素。下一步可以分别对左右子序列进行快速排序的第二趟排序。
阅读全文