首页 > 代码库 > 选择排序

选择排序

void SelectSort(int *p, int n){	int k;	for (int i = 0; i < n - 1 ; i++)	{		k = i;/*暂定当前整数为最小数,标记下标*/		for (int j = i + 1; j < n; j++)    /*从剩下的整数中寻找更小的整数*/		{			if (*(p + j) < *(p + k))				k = j;  /*标记刚刚找到的比较小的整数在数组中的下标*/		}                /*通过循环查找得到的最小整数与循环前暂定的最小整数的下标不一致时,进行对应位置的整数交换*/		if (k != i)		{			int t;			t = *(p + i);			*(p+i) = *(p+k);			*(p + k) = t;		}	}}

 

选择排序