码迷,mamicode.com
首页 > 编程语言 > 详细

排序算法——选择排序

时间:2015-03-12 11:03:32      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

选择排序:比如在一个长度为N的无序数组中,在第一趟遍历N个数据,找出其中最小的数值与第一个元素交换,第二趟遍历剩下的N-1个数据,找出其中最小的数值与第二个元素交换......第N-1趟遍历剩下的2个数据,找出其中最小的数值与第N-1个元素交换,至此选择排序完成。

 1 void SelectSort(int unsort[],const int count)
 2 {
 3     int i, j, index;
 4     int temp;
 5     for (i = 0; i < count;i++)
 6     {
 7         index = i;
 8         for (j = i + 1; j < count;j++)
 9         {
10             if (unsort[j]<unsort[index])
11             {
12                 index = j;
13             }
14         }
15         if (index!=i)
16         {
17             temp = unsort[index];
18             unsort[index] = unsort[i];
19             unsort[i] = temp;
20         }
21     }
22 }

测试

 1 int main()
 2 {
 3     int unsort[] = {2,5,7,4,6,9};
 4     SelectSort(unsort, 6);
 5     for (int i = 0; i < 6;i++)
 6     {
 7         printf("%d\r",unsort[i]);
 8     }
 9     return 0;
10 }

 

排序算法——选择排序

标签:

原文地址:http://www.cnblogs.com/jingliming/p/4331778.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!