导读 大家好,我是小典,我来为大家解答以上问题。linux删除文件命令,linuxsort很多人还不知道,现在让我们一起来看看吧!1、快速排序是平均速...
大家好,我是小典,我来为大家解答以上问题。linux删除文件命令,linuxsort很多人还不知道,现在让我们一起来看看吧!
1、快速排序是平均速度最快的排序方法,思想如下:
2、每趟选中一个元素,并把这个元素插入到它的正确位置,
3、也就是说每趟排完之后,选中元素的左边都小于它,右边元素都大于它。然后
4、再分别对其左边部分和右边部分进行快速排序。
5、排序函数如下
6、/*排序函数*/
7、/*入口参数:数组,数组起始元素下标,末端元素下标*/
8、/*返回值:排好序后的数组*/
9、void sort(DataType a[],int left,int right)
10、{
11、 DataType temp;
12、 int i,j;
13、 i=left;j=right;
14、 temp=a[left];
15、 while(i<j)
16、 {
17、 while(i<j&&a[j].Average>temp.Average)j--;
18、 if(i<j)
19、 {
20、 a[i]=a[j];
21、 i++;
22、 }
23、 while(i<j&&a[i].Average<temp.Average)i++;
24、 if(i<j)
25、 {
26、 a[j]=a[i];
27、 j--;
28、 }
29、 }
30、 a[i]=temp;
31、 if(left<i)sort(a,left,i-1);
32、 if(i<right)sort(a,i+1,right);
33、}
本文到此讲解完毕了,希望对大家有帮助。