C语言程序 排序----选择排序法
的有关信息介绍如下:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。
ubuntu 14.04 linux c
gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2
#include
#include
#define DATA_SIZE 10
void selection_sort(int array[],int num_size)
{
int index = 0,i = 0,j = 0,temp = 0;
for(i = 0;i < num_size-1;i++)
{
index = i;
for(j = i+1;j < num_size ;j++)
{
if(array[index] > array[j])
{
index = j;
}
}
if(index != i)
{
temp = array[i];
array[i] = array[index];
array[index] = temp;
}
}
}
int main(void)
{
int data[DATA_SIZE],i =0;
printf("the original data seq :\n");
for(i = 0;i < DATA_SIZE;i++)
{
data[i] = rand() % 100;
printf("%d,",data[i]);
}
printf("\n");
selection_sort(data,DATA_SIZE);
printf("after selection sort the seq :\n");
for(i = 0;i < DATA_SIZE;i++)
printf("%d,",data[i]);
printf("\n");
return 0;
}
xxx@linux:~/code# gcc -o selection_sort selection_sort.c
xxx@linux:~/code# ./selection_sort
the original data seq :
83,86,77,15,93,35,86,92,49,21,
after selection sort the seq :
15,21,35,49,77,83,86,86,92,93,