zoukankan      html  css  js  c++  java
  • 01-冒泡排序算法

    冒泡排序

    秋天来了,准备把数据结构与算法过一遍。

    冒泡排序特点:每遍历一次,最大/小的往下沉,最多遍历n次,时间复杂度为

    冒泡排序代码

    public static void bubbleSort(int[] array, int len){
        boolean isSwap; //swap flag
        //need n-1 times traverse at most
        for (int i = 1; i < len; i++){
            isSwap = false;
            for (int j = 0; j < len-i; j++){ //swap
                if (array[j] > array[j+1]){
                    int temp = array[j];
                    array[j] = array[j+1];
                    array[j+1] = temp;
                    isSwap = true;
                }
            }
    //        System.out.print(String.format("第%d次遍历之后数组为:", i));
    //        for (int x = 0; x < len; x++){
    //            System.out.print(array[x] + " ");
    //        }
    //        System.out.println();
            if (!isSwap) break;
        }
    }

    测试样例代码

    public static void main(String[] args){
        System.out.println("测试样例1:");
        int[] array = {54321};
        bubbleSort(array, 5);

        System.out.println(" 测试样例2:");
        int[] array2 = {12543};
        bubbleSort(array2, 5);
    }

    测试结果

    测试样例1:
    第1次遍历之后数组为:4 3 2 1 5 
    第2次遍历之后数组为:3 2 1 4 5 
    第3次遍历之后数组为:2 1 3 4 5 
    第4次遍历之后数组为:1 2 3 4 5 

    测试样例2:
    第1次遍历之后数组为:1 2 4 3 5 
    第2次遍历之后数组为:1 2 3 4 5 
    第3次遍历之后数组为:1 2 3 4 5 

    ----- end -----

  • 相关阅读:
    专用学习笔记
    百度地图API试用--(初次尝试)
    学习进度条
    AAAA
    HBase集成(准备篇)
    软件工程学期总结
    【操作系统】实验四 主存空间的分配和回收
    《构建之法》8、9、10章
    金融计算器app的下载情况
    操作系统 实验三 进程调度模拟程序
  • 原文地址:https://www.cnblogs.com/denluoyia/p/9673089.html
Copyright © 2011-2022 走看看