第一步:
public static void main(String [] args) {
test();
}
public static void test() {
int[]array={5,3,2,6,7,9,1};
for (int i = 0; i <array.length ; i++) {
System.out.print(array[i]);
}
BootSort(array);
System.out.println();
for (int sout:array) {
System.out.print(sout);
}
}
private static void BootSort(int[] array) {
for (int i = 0; i < array.length - 1; i++) {
if (array[i] > array[i + 1]) {
int temp = array[i];//本来数组位置;
array[i] = array[i + 1];
array[i + 1] = temp;
}
}
}第二步
private static void BootSort(int[] array) {
for (int j = array.length-1; j >0; j--) {
for (int i = 0; i < j; i++) {
if (array[i] > array[i + 1]) {
int temp = array[i];//本来数组位置;
array[i] = array[i + 1];
array[i + 1] = temp;
}
}
}
}第三步
private static void BootSort(int[] array) {
for (int j = array.length-1; j >0; j--) {
boolean flag=true;
for (int i = 0; i < j; i++) {
if (array[i] > array[i + 1]) {
int temp = array[i];//本来数组位置;
array[i] = array[i + 1];
array[i + 1] = temp;
flag=false;//优化,走进来了那就可以结束循环了
}
}
if (flag){
break;
}
}
}上面就是一个简单冒泡排序,有一次面试问我冒泡排序什么场景用,呵呵,斗牛,升级都在用,
又问我如果俩个数排序用什么排序好,冒泡排序适合多少数字,这个没有回答上来。
随时随地看视频