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

直接选择排序

时间:2016-05-23 20:52:02      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

直接选择排序(Straight Select Sorting) 也是一种简单的排序方法,它的基本思想是:第一次从R[0]~R[n-1]中选取最小值,与R[0]交换,第二次从R{1}~R[n-1]中选取最小值,与R[1]交换,....,

第i次从R[i-1]~R[n-1]中选取最小值,与R[i-1]交换,.....,第n-1次从R[n-2]~R[n-1]中选取最小值,与R[n-2]交换,总共通过n-1次,得到一个按排序码从小到大排列的有序序列.

//直接选择排序  
void sort(int array[],int size)
{  
  int small;  
  for(int i=0; i < size - 1; i++)
  {  
    //将i假设为最小的  
    small = i;  
    //从i+1开始遍历,找到最小的但是比i大的数的下标  
    for(int j=i+1; j<size; j++)
    {  
      if(array[j]<array[small])
      {  
        small = j;  
      }  
    } 

    //将i和找到的最小的数交换  
    int temp = array[i];  
    array[i] = array[small];  
    array[small] = temp;    
  }  
}

 

直接选择排序

标签:

原文地址:http://www.cnblogs.com/happykoukou/p/5521063.html

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