选择排序
选择排序从需要排序的队列数据中选择最小的同第一个值交换,再从剩下的部分中选择最小的与第二个交换,这样往复下去,最后实现全队列的排序。
#include <iostream>
using namespace std;
void SelectSort(int *pData, int Count){
int iTemp; //存储值
int iPos; //存储下标
for (int i=0; i<Count-1; i++) {
iTemp = pData[i];
iPos = i;
for (int j=i+1; j<Count; j++) {
if (pData[j]<iTemp) {
iTemp = pData[j];
iPos = j;
}
}
//交换数据
pData[iPos] = pData[i];
pData[i] = iTemp;
}
}
int main()
{
int data[] = {10,9,8,7,6,5,4};
SelectSort(data, 7);
for (int i=0; i<7; i++) {
cout <<data[i]<<" ";
}
}