Java數據結構與算法_冒泡排序
一、冒泡排序介紹
冒泡排序也稱起泡排序,它是通過元素兩兩比較,如果前者比後者大,則交換位置,這樣一趟排序下來,最大的元素就排到隊尾了;反覆此操作,直至數列有序完成排序操作。
二、算法流程
原始序列:49 38 65 97 76 13 27 49
三、冒泡排序算法實現
/**
* Created by slx on 2017/8/19.
*/
public class BubbleSort {
public static void main(String[] args) {
int[] a = new int[]{49, 38, 65, 97, 76, 13, 27, 49};
System.out.println("初始值:");
print(a);
bubbleSort(a);
System.out.println("\n排序後:");
print(a);
}
public static void print(int[] a) {
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
public static void bubbleSort(int array[]){
for(int i = 0 ; i< array.length-1; ++i) {
// 交換a[j]和a[j+1]
for(int j = 1; j < array.length-i; ++j) {
if(array[j-1] > array[j])
{
int tmp = array[j-1] ;
array[j-1] = array[j] ;
array[j] = tmp;
}
}
}
}
}
輸出結果:
初始值:
49 38 65 97 76 13 27 49
排序後:
13 27 38 49 49 65 76 97
Process finished with exit code 0