阐述冒泡排序的思想,并演示一下冒泡排序的代码的实现

冒泡排序的作用:
        可以用于对数组或者对集合的元素进行大小排序!!

冒泡排序的核心算法思想:
        int[] arr = new int[] {5, 2, 3, 1};
        思想:每次从数组的第一个位置开始两两比较。把较大的元素与较小的元素进行层层交换。
        最终把当前最大的一个元素存入到数组当前的末尾。这就是冒泡思想。


冒泡排序的核心点:每次两两比较找出当前最大值冒出到当前最后面即可!!

冒泡排序的实现核心:
        1.确定总共需要冒几轮: 数组的长度-1.
        2.每轮两两比较几次。
            i(轮数)      次数       次数规律
            0             3        n - i - 1
            1             2
            2             1

小结:
        确定总共需要冒几轮: 数组的长度-1.
        每轮两两比较几次:n - i - 1
public class BubbleSort01 {
    public static void main(String[] args) {
        int[] arr = new int[] {5, 2, 3, 1};
        //                     0  1  2  3
        // 1、定义一个外部循环控制冒泡的轮数
        for (int i = 0; i < arr.length - 1; i++) {
            // 2、定义一个内部循环控制每轮比较的次数!
            // i = 0   j = 0  1  2
            // i = 1   j = 0  1
            // i = 2   j = 0
            for (int j = 0; j < arr.length - i - 1; j++) {
                // 判断后面的位置是否小于当前位置,若小则交换
                if(arr[j] > arr[j+1]){
                    // 交换元素
                    int temp = arr[j+1];
                    arr[j+1] = arr[j];
                    arr[j] = temp;
                }
            }
        }
        System.out.println("内容:"+ Arrays.toString(arr));
    }
}