C++实现选择排序
#pragmaoncevoidSelectSort(int*array,intn){assert(array);intleft=0;intright=n-1;while(left<right){intminIndex=left;intmaxIndex=right;for(inti=left;i<=right;++i){if(array[i]<array[minIndex])minIndex=i;if(array[i]>array[maxIndex])maxIndex=i;}swap(array[left],array[minIndex]);if(left==maxIndex)//调整maxIndexmaxIndex=minIndex;swap(array[right],array[maxIndex]);++left;--right;}}voidSelectSortTest(){intarray[]={9,4,6,5,8,3,7,1,2,0};SelectSort(array,sizeof(array)/sizeof(array[0]));for(size_ti=0;i<sizeof(array)/sizeof(array[0]);++i){cout<<array[i]<<"";}cout<<endl;}
#include<iostream>usingnamespacestd;#include<assert.h>#include"SelectSort.h"intmain(){SelectSortTest();return0;}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。