public class Bubble { /* 对数组a中的元素进行排序 */ public static void sort(Comparable[] a){ for(int i=a.length-1;i>0;i--){ for(int j=0;j0; } /* 数组元素i和j交换位置 */ private static void exch(Comparable[] a,int i,int j){ Comparable temp; temp = a[i]; a[i]=a[j]; a[j]=temp; } public static void bubbleSort(int[] data) { int arrayLength = data.length; for (int i = 1; i < arrayLength; i++) {//第i次排序 for (int j = 0; j < arrayLength - i; j++) {//从索引为j的数开始 if (data[j] > data[j + 1]) { //相邻元素两两对比 int temp = data[j + 1]; // 元素交换 data[j + 1] = data[j]; data[j] = temp; } } System.out.println("第" + i + "次排序:\n" + java.util.Arrays.toString(data)); } } public static void main(String[] args) { int[] data = {3, 44, 38, 5, 47, 15, 36, 26, 27, 2, 46, 4, 19, 50, 48}; System.out.println("排序之前:\n" + java.util.Arrays.toString(data)); bubbleSort(data); System.out.println("排序之后:\n" + java.util.Arrays.toString(data)); } }