1.给出一组关键字T=(12,2,16,30,8,28,4,10,20,6,18),写出用下列算法从小到大排序时第一趟结束时的序列; (1) 希尔排序(第一趟排序的增量为5) (2) 快速排序(选第一个记录为枢轴) (3) 基数排序(基数为10)
时间: 2023-09-19 10:08:12 浏览: 93
好的,我来回答你的问题。
1. 希尔排序第一趟结束时的序列:
初始序列:12 2 16 30 8 28 4 10 20 6 18
第一趟增量为5,将序列分成5组:
12 28
2 4
16 10
30 20
8 6
对每组进行插入排序,得到:
8 4 16 20 6 28 2 10 12 30 18
因此第一趟结束时的序列是:8 4 16 20 6 28 2 10 12 30 18
2. 快速排序第一趟结束时的序列:
初始序列:12 2 16 30 8 28 4 10 20 6 18
选第一个记录12作为枢轴,将序列分成两部分:
左部分:2 8 4 10 6
右部分:16 30 28 20 18
对左部分进行快速排序,得到:
2 4 6 8 10 12 16 30 28 20 18
因此第一趟结束时的序列是:2 4 6 8 10 12 16 30 28 20 18
3. 基数排序第一趟结束时的序列:
初始序列:12 2 16 30 8 28 4 10 20 6 18
第一趟按个位数字排序,得到:
10 12 2 4 6 8 20 28 16 30 18
因此第一趟结束时的序列是:10 12 2 4 6 8 20 28 16 30 18
希望我的回答能够帮助你解决问题!
阅读全文