数据结构与算法之冒泡排序

冒泡排序是最好理解的排序方式,从第二个元素开始循环如果比第一个元素小则交换位置,继续向后冒泡,一圈下来确定了下标位置0是最小的元素.以此类推.此算法的时间复杂度为O(n^2)

public static int[] maopao(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            for (int x = i + 1; x < arr.length; x++) {
                if (arr[x] < arr[i]) {
                    int temp = arr[x];
                    arr[i] = arr[x];
                    arr[x] = temp;
                }
            }
        }
        return arr;
    }

以下代码是提供的测试方法

public static void main(String[] args) {
        Random random = new Random();
        while (true) {
            int length = random.nextInt(100);
            int[] arr = new int[length];
            for (int x = 0; x < length; x++) {
                arr[x] = random.nextInt(100);
            }
            int[] maopao = maopao(arr);
            Arrays.sort(arr);
            boolean equals = Arrays.equals(maopao, arr);
            System.out.println(equals);
            if (!equals) {
                break;
            }
        }
    }

 

posted @ 2022-04-14 22:01  顶风少年  阅读(30)  评论(0编辑  收藏  举报
返回顶部