冒泡排序算法

Posted lfdestiny

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了冒泡排序算法相关的知识,希望对你有一定的参考价值。

import cn.idestiny.util.GeneratedArray;

/**
 * @Auther: FAN
 * @Date: 2018/8/25 21:21
 * @Description:冒泡排序
 * 1) 4,2,5,3,7,1
 * 2) 2,4,3,5,1,7
 * 3) 2,3,4,1,5,7
 * 4) 2,3,1,4,5,7
 * 5) 2,1,3,4,5,7
 * 6) 1,2,3,4,5,7
 **/
public class BubbleSort {

    public static void main(String[] args) {

        int[] arr = GeneratedArray.randomGeneratedArray(10,100,100);
        bubbleSort(arr);
        GeneratedArray.isSorted(arr);

    }

    /**
     * 冒泡排序算法
     * @param arr
     */
    public static void bubbleSort(int[] arr){
        //每次循环都去掉嘴都一个元素
        for(int i = arr.length-1;i>=0;i--){
            //找到最大元素排到最后
            for (int j = 0;j<i;j++){
                if(arr[j]>arr[j+1]){
                    int tmp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = tmp;
                }
            }
        }
    }

}

 

以上是关于冒泡排序算法的主要内容,如果未能解决你的问题,请参考以下文章

排序算法之冒泡选择插入排序(Java)

排序算法_冒泡排序(算法设计与C代码实现)

冒泡排序算法原理和代码实现,就是这么简单。。。

三大基础排序算法(冒泡排序,选择排序,插入排序)

交换排序(冒泡排序快速排序的算法思想及代码实现)

算法漫游指北(第七篇):冒泡排序冒泡排序算法描述动图演示代码实现过程分析时间复杂度和选择排序算法描述动图演示代码实现过程分析时间复杂度