还是先来看看选择排序的思想。选择排序的思想非常直接,不是要排序么?那好,我就从所有序列中先找到最小的,然后放到第一个位置。之后再看剩余元素中最小的,放到第二个位置……以此类推,就可以完成整个的排序工作了。
// tt.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
void sort(int a[], int count)
{
//选取count-1次最小即可
for (int i=0; i<count-1; i++)
{
int minValue = a[i];
int tempPoint = i;
int j;
for (j=i+1; j<count; j++)
{
if (a[j] < minValue)
{
tempPoint = j;
minValue = a[j];
}
}
int tempValue = a[i];
a[i] = a[tempPoint];
a[tempPoint] = tempValue;
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int a[10] = {5,7,4,9,0,8,1,2,6,3};
sort(a, 10);
return 0;
}