####一般冒泡排序
/** * 从前往后 */ void bubbleSort(){ int[] intArr = {6,2,5,3,1,8,1}; for(int i=0;i<intArr.length-1;i++){ //需要循环的趟数 for(int j=0;j<intArr.length-i-1;j++){ //每趟交换的次数 if(intArr[j]>intArr[j+1]){ int temp = intArr[j]; intArr[j] = intArr[j+1]; intArr[j+1] = temp; } } } for(int i=0;i<intArr.length;i++){ System.out.println(intArr[i]); } } 或者 void bubbleSort(){ int[] intArr = {6,2,5,3,1,8,1}; for(int i=intArr.length-1;i>0;i--){ for(int j=0;j<i;j++){ if(intArr[j]>intArr[j+1]){ int temp = intArr[j]; intArr[j] = intArr[j+1]; intArr[j+1] = temp; } } } for(int i=0;i<intArr.length;i++){ System.out.println(intArr[i]); } } /** * 从后往前 */ void bubbleSort(){ int[] intArr = {6,2,5,3,1,8,1}; for(int i=intArr.length-1;i>0;i--){ for(int j=i;j>0;j--){ if(intArr[j]>intArr[j-1]){ int temp = intArr[j]; intArr[j] = intArr[j-1]; intArr[j-1] = temp; } } } for(int i=0;i<intArr.length;i++){ System.out.println(intArr[i]); } }####优化冒泡排序 如果有一趟没有发生交换,说明排序已经完成
