// 主要排序法有:
// 一、冒泡(Bubble)排序——相邻交换
// 二、选择排序——每次最小/大排在相应的位置
// 三、插入排序——将下一个插入已排好的序列中
// 四、壳(Shell)排序——缩小增量
// 五、归并排序
// 六、快速排序
// 七、堆排序
// 八、拓扑排序
// 九、锦标赛排序
// 十、基数排序
//选择排序 我在这里就选择一种相对简单较高的选择排序把
//递归排序效率是很高的 不过这很难,初学者可以先把其他的学会,如果还有时间可以去学习一下
// ----------------------------------Code 从小到大排序n个数--------------------------------
public void SelectSortArray()
{
int min_index;
for(int i=0;i<n-1;i++)
{
min_index=i;
for(int j=i+1;j<n;j++)//每次扫描选择最小项
if(arr[j]<arr[min_index]) min_index=j;
if(min_index!=i)//找到最小项交换,即将这一项移到列表中的正确位置
{
int temp;
temp=arr[i]; arr[i]=arr[min_index]; arr[min_index]=temp;
}
}
}
|