...12,27,18,26),则第3趟简单选择排序结束后的结果。

发布网友 发布时间:2024-10-24 12:18

我来回答

1个回答

热心网友 时间:2024-11-07 06:08

(12,18,24,35,27,26)

第1趟排序结果为:123524271826

第2趟排序结果为:121835272426

第3趟排序结果为:121824352726

第4趟排序结果为:121824263527

第5趟排序结果为:121824262735

扩展资料

n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果:

1,初始状态:无序区为R[1..n],有序区为空。

2,第1趟排序

在无序区R[1..n]中选出关键字最小的记录R[k],将它与无序区的第1个记录R[1]交换,使R[1..1]和R[2..n]分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。

??

3,第i趟排序

第i趟排序开始时,当前有序区和无序区分别为R[1..i-1]和R(i..n)。该趟排序从当前无序区中选出关键字最小的记录R[k],将它与无序区的第1个记录R交换,使R[1..i]和R分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。

参考代码如下:

voidselectSort(inta[],intn){

for(inti=1;i<=n-1;i++){//进行n-1趟选择

intindex=i;

for(intj=i+1;j<=n;j++)//从无序区选取最小的记录

if(a[index]>a[j])

index=j;

if(index!=i)

swap(&a[i],&a[min]);;

}

}

参考资料:百度百科-选择排序

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com