数据结构之简单选择排序及代码实现
1.基本思想
先在n个数据元素中选择出一个最小的数据元素和第一个数据元素交换,再在剩下的n-1个元素中选择最小的和第二个数据元素交换等等
2.代码实现
//author:seanyuan
//contact:1845180975@qq.com
#include<stdio.h>
//简单选择排序
void selectSort(int a[],int n)//嵌套循环,时间复杂度为O(n²)
{
int i,j;
int temp;//用于交换
for(i=0;i<n-1;i++)//i循环n次
{
int min;
min=i;
for(j=i+1;j<n;++j)//j循环n次
{
if(a[j]<a[min])
{
temp=a[min];
a[min]=a[j];
a[j]=temp;
}
}
}
}
//输出函数
void print(int a[],int n)
{
int m;
for(m=0;m<n;m++)
{
printf("%d\t",a[m]);
}
}
//实现
int main()
{
int a[5]={1,0,9,-8,3};
selectSort(a,5);
print(a,5);
}
3.结果截图
4.总结
代码简单容易,希望能够帮助到,好好学习,加油!