标签:i+1 选择 oid mes using ace str stream 排序
#include<iostream>
using namespace std;
//选择排序
void SeleteSort(int data[],int count)
{
int min=0;
int auxiliary=0;
for(int i=0;i<count;i++)
{
min = i;
for(int j=i+1;j<count;j++)
{
if(data[j]<data[min])
min=j;
}
if(i!=min)
{
auxiliary=data[i];
data[i]=data[min];
data[min]=auxiliary;
}
}
}
int main()
{
int array[]={
2,3,5,4,2,1,4,7,8,9,0
};
SeleteSort(array,11);
for(int i=0;i<11;i++)
cout<<array[i]<<endl;
return 0;
}
这里是不是还要说下原理:
进行n遍比较,每一趟都找出数值最小的记录与第一个指针交换,第二趟从n-1的记录中找出关键码最小的值与第二个交换,直到整个序列有序排列。
数据移动次数较少,但关键码比较次数是n(n+1)/2,时间复杂度为O(n^2)
标签:i+1 选择 oid mes using ace str stream 排序
原文地址:http://www.cnblogs.com/enyala/p/7637508.html