冒泡排序.png

    1. 需求:
    2. 数组元素:{24, 69, 80, 57, 13}
    3. 请对数组元素进行排序。
    4. 冒泡排序
    5. 相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处
        /*
         * 冒泡排序
         * 1,返回值类型,void
         * 2,参数列表,int[] arr
         * 
         *  int[] arr = {24, 69, 80, 57, 13};
         *
         *     第一次:arr[0]与arr[1],arr[1]与arr[2],arr[2]与arr[3],arr[3]与arr[4]比较4次
            第二次:arr[0]与arr[1],arr[1]与arr[2],arr[2]与arr[3]比较3次
            第三次:arr[0]与arr[1],arr[1]与arr[2]比较2次
            第四次:arr[0]与arr[1]比较1次
         */
    
    
        public static void bubbleSort(int[] arr) {
            for (int i = 0; i < arr.length - 1; i++) {                //外循环只需要比较arr.length-1次就可以了
                for (int j = 0; j < arr.length - 1 - i; j++) {        //-1为了防止索引越界,-i为了提高效率,冒完泡的不再比较了
                    if(arr[j] > arr[j+1]) {
                        int temp = arr[j + 1];
                        arr[j + 1] = arr[j];
                        arr[j] = temp;
    
                    }
                }
            }
        }