冒泡排序 (java)

Posted zhihaowu

tags:

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

l1 冒泡排序

l2 冒泡排序介绍

冒泡排序(Bubble Sort),又被称为气泡排序或泡沫排序。

它是一种较简单的排序算法。它会遍历若干次要排序的数列,每次遍历时,它都会从前往后依次的比较相邻两个数的大小;如果前者比后者大,则交换它们的位置。这样,一次遍历之后,最大的元素就在数列的末尾! 采用相同的方法再次遍历时,第二大的元素就被排列在最大元素之前。重复此操作,直到整个数列都有序为止!

  • 实现思路: 找出第一大元素,和最后一个元素互换;找出第二大元素,和第一大元素前的元素互换... 找出前len-i个值中的最大值,和第len-i-1个元素(每行中除去排好序的元素的最后一个元素)互换.

技术分享图片

l3 代码

/*
* len:数组长度
*/
public int[] sort() {
        int bigger = 0;
        int bigger_index = 0;
        int i = 0, j = 0;

        for (i = len - 1; i > 0; i--) {
            bigger = array[0];
            bigger_index = 0;
            for (j = 1; j <= i; j++) {
                if (bigger < array[j]) {
                    bigger = array[j];
                    bigger_index = j;
                }
            }
            // 这趟最大值
            // System.out.println("最大"+bigger);
            swap(bigger_index, i);
        }
        return array;
    }

l4 源码

https://github.com/waddless/data_structure/tree/master/comparison_sorting/BubbleSort#l1-%E5%86%92%E6%B3%A1%E6%8E%92%E5%BA%8F

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

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

用java写一个冒泡排序,封装一个学生,学生有属性,姓名,年龄,已学生年龄排序

Java代码实现—冒泡排序

Java冒泡排序

java冒泡排序和快速排序代码

冒泡排序