第二发,直接选择排序,效率比冒泡高。
1 public class StraightSelectionSort { 2 public static void sort(int[] a) 3 { 4 //直接选择排序,缩小范围,每次挑出最小数,效率比冒泡高。 5 int temp=0; 6 int index=0; 7 for(int i=0;i<a.length-1;i++)//一共进行n-1遍 8 { 9 index=i;//用来标记 10 for(int j=i;j<a.length;j++) 11 { 12 if(a[j]<a[index]) 13 index=j; 14 } 15 System.out.println("第"+(i+1)+"遍");; 16 temp=a[index]; 17 a[index]=a[i]; 18 a[i]=temp;//交换,把最小的数提出去 19 for(int k=0;k<a.length;k++) 20 System.out.print(a[k]+" "); 21 System.out.println("."); 22 } 23 } 24 public static void main(String[] args) 25 { 26 int[] a={6,3,7,9,10,2,4,1,5,8}; 27 sort(a); 28 } 29 }
时间: 2024-10-17 15:25:37