选择排序的思想是在记录中选择关键字最小的记录作为有序序列中第i个记录。其中简单选择排序时最常见的。
其他变形有,堆排序,树形选择排序等。
下面给出简单选择排序的基本算法:
#include "stdafx.h"
#include<iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int sarr[7]={49,38,65,97,76,13,27};
void SelSort(int arr[],int n);
SelSort(sarr,7);
for(int i=0;i<7;i++)
cout<<sarr[i]<<" ";
cout<<endl;
return 0;
}
/*
标准化
*/
void SelSort(int arr[],int n)
{
int min;
int temp;
for(int i=0;i<n-1;i++)
{
min=arr[i];
for(int j=i+1;j<n;j++)
{
if(arr[j]<min)
{
min=arr[j];
arr[j]=arr[i];
arr[i]=min;
}
}
}
}
测试结果:
13 27 38 49 65 76 97
请按任意键继续. . .