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