#include<stdio.h>
void SelectSort(int R[],int n)
{
int i,j,k;
int temp;
for(i=0;i<n;++i)
{
k=i;
//这个循环是算法的关键,它从无序序列中挑出一个最小的元素
for(j=i+1;j<n;++j)
if(R[k]>R[j])
k=j;
//下面三句完成最小元素与无序序列第一个元素的交换
temp=R[i];
R[i]=R[k];
R[k]=temp;
}
}
int main()
{
int R[5]={2,8,1,6,3};
int i;
SelectSort(R, 5);
for(i=0;i<5;i++)
printf("%d ",R[i]);
printf("\n");
return 0;
}
时间复杂度为O(n^2)
选择类排序之选择排序
最新推荐文章于 2024-05-28 08:46:40 发布