1.冒泡排序是最出名的排序算法之一,总共有八大排序!
2.冒泡排序的算法相对简单,两层循环,外层冒泡轮数,里层以此比较。
如下:
j < array.length - 1-i
的作用:下一轮比较不再重复比较上一轮已经排序好的数。
package com.wang.array;import java.util.Arrays;public class ArrayDemo08 {public static void main(String[] args) {int[] a = {2,4,1,5,8,2,4,5,2,0};sort(a);System.out.println(Arrays.toString(a));}//冒泡排序/*1.比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置2.每一次比较,都会产生出一个最大,或者最小的数字;3.下一轮则可以少一次排序!*/public static int[] sort(int[] array) {//定义一个临时变量,用于实现两个数的交换int temp = 0;for (int i = 0; i < array.length - 1; i++) {for (int j = 0; j < array.length - 1-i; j++) {//如果前一个数大于后一个数,就交换两个数的位置if (array[j] > array[j+1]) {temp = array[j];array[j] = array[j+1];array[j+1] = temp;}}}return array;}
}
补充:Java中交换两个数的原理