冒泡排序

记录一下冒泡排序的写法。

public void bubbleSort(int[] arr) {

        int n = arr.length;
        for(int i = 0;i1;i++) {//比较的趟数
            int flag = 0;//标记是否有交换
            for(int j = 0;j1-i;j++) {//每趟比较次数
                if(arr[j] > arr[j+1]) {
                    int temp = arr[j+1];
                    arr[j+1] = arr[j];
                    arr[j] = temp;
                    flag = 1;
                }
            }
            if(flag == 0)//这一趟没有交换,提前结束循环
                break;
        }
    }

冒泡排序的时间复杂度为O(n^2),空间复杂度为O(1)

你可能感兴趣的:(冒泡排序,基础算法)