話不多說,請看代碼:
//冒泡排序,從數組前面向后循環比較 public static void sort1(int[] aa){ int size=aa.length; int temp; //循環數組 for(int i=0;i<size;i++){ //aa[i]分別與i位后面的所有數比較并交換,aa[i]成為最小值 for(int j=i+1;j<size;j++){ if(aa[i]>aa[j]){ temp=aa[i]; aa[i]=aa[j]; aa[j]=temp; } } } for(int i=0;i<aa.length;i++){ System.out.println(aa[i]); } }排序思路:第一層for循環,循環數組中的每個值,第二層for循環,用第一層for循環的aa[i]分別與從i+1位開始的其他數進行比較大小,如果比aa[i]小,那么交換aa[i]和aa[j]。通過第二層for循環,aa[i]將會是從i+1位開始的所有數中的最小值。以此類推,分別通過交換得到其余位數在比它大的位數的最小值。這樣便得到這個數組的從小到大的排序。
//冒泡排序,從數組后面向前循環比較 public static void sort2(int[] aa){ int size=aa.length; int temp; //循環數組 for(int i=0;i<size;i++){ //aa[i]分別與i位后面的所有數比較并交換,aa[i]成為最小值 for(int j=size-1;j>i;j--){ if(aa[i]>aa[j]){ temp=aa[i]; aa[i]=aa[j]; aa[j]=temp; } } } for(int i=0;i<aa.length;i++){ System.out.println(aa[i]); } }以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!
新聞熱點
疑難解答