排序算法--选择排序

时间:2022-10-11 22:07:47
选择排序


排序算法--选择排序


#include  <stdio.h>


void swap(int *a,int *b)
{
	if((a == NULL) || (b == NULL))
		return;
	
	int temp = *a;
	*a = *b;
	*b = temp;
	
	return;
}


void selection(int a[],int len)
{
	int i,j=0;
	for(i=0;i<len-1;i++)//n个数,只需要n-1次排序就可以,剩下一个自动被归位。
	{
		for(j=i+1;j<len;j++)
		{
			if(a[i] > a[j])
				swap(&a[i],&a[j]);
		}			
		
	}
	
	return;
}


void main()
{
	int i=0;
	int a[10] = {5,3,44,4,12,123,7,99,6,1};
	int len = sizeof(a)/sizeof(a[0]);
	selection(a,len);
	for(i=0;i<len;i++)
		printf("%d ",a[i]);
	printf("\n");
	return;
}