美文网首页
冒泡排序

冒泡排序

作者: 但时间也偷换概念 | 来源:发表于2020-03-22 14:53 被阅读0次

冒泡排序(Bubble Sort)

冒泡排序是一种简单的排序算法。它适合小规模数据的排序,并且其效率比较低,但是作为一个入门的算法,还是值得学习的。

  1. 什么是冒泡排序?

冒泡排序是一种交换排序,它的基本思想是:两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。

  1. 算法描述(此处以正序为例)

比较相邻的两个数,如果第一个数比第二个数大,则两数交换。
对之后的相邻元素进行同样的工作,从开始到最后一对,这样进行一次排序后,数据的最后一位会是最大值 ,第一次循环进行的次数为 arr.length-1。
之后对所有的元素重复以上的步骤,且以后每次循环的次数为arr.length-1-i (i为循环第几次 ,i 从零开始);
重复上述步骤,直到排序完成

public class BubblingSort {

    public static void main(String[] args) {
        int[] arrays = new int[]{3, 1, 5, 8, 2, 5, 14, 3};

        for (int i = 0; i < arrays.length - 1; i++) {
            for (int j = 0; j < arrays.length-1-i; j++) {
                if (arrays[j] > arrays[j+1]) {
                    int temp = arrays[j];
                    arrays[j] = arrays[j+1];
                    arrays[j+1] = temp;
                }
            }
        }

        for (int i = 0; i < arrays.length; i++) {
            System.out.println(arrays[i]);
        }


    }
}

冒泡动图

相关文章

网友评论

      本文标题:冒泡排序

      本文链接:https://www.haomeiwen.com/subject/krqvyhtx.html