public static void selectSortArray(int [] arr)
{
//选择排序 由小到大
int index=0;//记录当前序列中最小值元素的的下标
int temp;//临时变量,交换元素时用
for(int i=0;i<arr.length-1;i++)
{
index=0;//每趟比较清零,也可以写成index=i;
for(int j=i+1;j<arr.length;j++)
{
if(arr[i]>arr[j])//如果大的在前,则记录下比他小的值的下标
{
index=j;//记录下当前序列中的最下值的下标
}
}
//本趟比较结束 交换
if(index>i)
//比较i index防止没有需要交换的值的影响 如果index>i说明有需要交换的值
{
temp=arr[i];
arr[i]=arr[index];
arr[index]=temp;
}
}
} |