-
比较相邻元素。如果前一个元素比后一个元素大,就交换这两个元素的位置
-
对每一对相邻元素做同样的工作,从开始第一对元素到结尾的最后一对元素。最终最后的位置的元素就是最大值
时间复杂度:
public class Bubble { public static void sort(Comparable[] a){ for (int i = a.length-1; i >0 ; i--) { for (int j = 0; j < i; j++) { if(greater(a[j],a[j+1]) ){ each(a,j,j+1); } } } } private static boolean greater(Comparable v,Comparable w){ int i = v.compareTo(w); return i>0; } private static void each(Comparable[] a,int i,int j){ Comparable temp; temp=a[i]; a[i]=a[j]; a[j]=temp; } }
浙公网安备 33010602011771号