冒泡排序

时间复杂度O(n^2)空间复杂度O(1) 思路:每次碰到大的就交换顺序,共需排序n-1次

public static void bubbleSort_(int[] ints){
        int length = ints.length;
        Boolean flag = false;//排序优化,若在某次循环中一次都没有交换则已排序完成
        for (int i = 0; i < length; i++) {
            for (int j = 0; j < length - 1 - i; j++) {
                if(ints[j] > ints[j + 1]){
                    //交换
                    int temp = ints[j];
                    ints[j] = ints[j + 1];
                    ints[j + 1] = temp;
                    flag = true;
                }
            }
            System.out.println(Arrays.toString(ints));
            if(flag){
                flag = false;//重置
            }else {
                break;//一次都没有交换则已是最优排序,退出循环
            }
        }
    }

1.《八大排序算法之冒泡排序—Java》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《八大排序算法之冒泡排序—Java》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/jiaoyu/2372058.html