public class DemoSelect {
/**
* 选择排序
* Selection Sort
* 有序区【无序区】 依次对比找到最小,次小。。。。
* 初始关键字 【49 38 65 97 76 13 27 49】
第一趟排序后 13 【38 65 97 76 49 27 49】
第二趟排序后 13 27 【65 97 76 49 38 49】
第三趟排序后 13 27 38 【97 76 49 65 49】
第四趟排序后 13 27 38 49 【49 97 65 76】
第五趟排序后 13 27 38 49 49 【97 97 76】
第六趟排序后 13 27 38 49 49 76 【76 97】
第七趟排序后 13 27 38 49 49 76 76 【 97】
最后排序结果 13 27 38 49 49 76 76 97【】
*/
public static void main(String[] args) {
int []arr={10,5,8,1,11,-2,0,44};
for(int i = 0 ; i <arr.length-1;i++){
//i+1是为了不和之前的数继续比较了
//记忆select 和 bubble 比较 for(int j=0;j<arr.length-i-1;j++)==把-i-1移到初始值就变成了int j=i+1;
for(int j=i+1;j<arr.length;j++){
if(arr[i]>arr[j]){
int temp = arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
for(int i=0 ;i<arr.length;i++)
{
if(i!=arr.length-1){
System.out.print(arr[i]+",");
}
else{
System.out.print(arr[i]);
}
}
}
}
|
|