ソートアルゴリズム(二)バブルソート
要点:バブルのコアは交換と遍歴であり、1つの遍歴に交換がない場合、変更キューはすでに秩序化されています.
上記の点に基づいて,識別変数を追加し,交換状況を記録し,バブルソートを最適化することができる.じょうふごう
上記の点に基づいて,識別変数を追加し,交換状況を記録し,バブルソートを最適化することができる.じょうふごう
public static void main(String[] args) {
int[] a = {1, 5, 88, 4, 5, 0, 84, 69, 12, 5, 10, 254};
System.out.println(Arrays.toString(a));
optimizBubbleSort(a);
System.out.println(Arrays.toString(a));
}
public static void optimizBubbleSort(int[] a){
if(a!=null&&a.length>0){
int len = a.length;
for(int i = 0;i<len;i++){
boolean trans = false; //
for(int j=0;j<len-1-i;j++){
if(a[j]<a[j+1]){
int t = a[j+1];
a[j+1] = a[j];
a[j] = t;
trans = true;
}
}
if(!trans){
break;
}
}
}
}