冒泡排序

public class SortTest {

    public static void main(String[] args) {
        int[] arr = {5,3,7,2,6,8,1,9,4};
        sort(arr);
        System.out.println(Arrays.toString(arr));
    }

    public static void sort(int[] arr) {
        int temp;
        // 1.控制冒泡的次数,最后一个无需冒泡。-1:最后一个数字不用比较
        for (int i=0;i<arr.length-1;i++) {
            // -i:已完成冒泡的次数(数字),-1:最后一个数字不用比较
            for (int j=0; j<arr.length-i-1;j++) {
                // 2.每相邻两个数字进行比较,如果前面的数字比后面的数字大,则进行交换
                if (arr[j] > arr[j+1]) {
                    temp = arr[j+1];
                    arr[j+1] = arr[j];
                    arr[j] = temp;
                }
            }
            // 3.每完成一次冒泡,可以得到比较中最大的数字放到最后面
        }

    }
}

 

posted @ 2021-09-03 06:49  coolw  阅读(26)  评论(0编辑  收藏  举报