冒泡排序(Java版)
阿新 • • 發佈:2019-03-24
16px out color strong ole 元素 pri array boolean
冒泡排序基本思想:
1.比較相鄰的元素,如果第一個比第二個大,就交換它們兩個。
2.對每一對相鄰元素做同樣的工作,從開始的第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
3.針對所有的元素重復以上的步驟,除了最後一個。
4.持續每次對越來越少的元素重復上面的步驟,直到沒有任何一對數字需要比較。
1 package cn.hst.hh; 2 3 import java.util.Arrays; 4 5 /** 6 * 測試冒泡排序 7 * @author Trista 8 *9 */ 10 public class TestBubbleSort { 11 public static void main(String[] agrs) { 12 int[] values = {3,1,6,2,9,0,7,4,5,8}; 13 int temp = 0; 14 for(int i=values.length-1;i>0;i--) { 15 int count = 0; 16 boolean flag = true; 17 for(intj=0;j<i;j++) { 18 if(values[j]>values[j+1]) { 19 temp = values[j]; 20 values[j] = values[j+1]; 21 values[j+1] = temp; 22 flag = false; 23 } 24 count++; 25 }26 if(flag) { //如果沒有交換,則認為已經排好 27 break; 28 } 29 System.out.println(Arrays.toString(values)); 30 System.out.println("共"+count+"次"); 31 System.out.println("################"); 32 } 33 System.out.println(Arrays.toString(values)); 34 } 35 36 }
冒泡排序(Java版)