`

Java 冒泡排序算法

阅读更多
冒泡排序算法的一般性策略:搜索整个值列,比较相邻元素,如果两者的相对次序不对,则交换它们,其结果是最大值“想水泡一样”移动到值列的最后一个位置上,这也是它在最终完成排序的值列中合适的位置。然后再次搜索值列,将第二大的值移动至倒数第二个位置上,重复该过程,直至将所有元素移动到正确的位置上。
public class Bubble {

    // 冒泡排序函数1
    public static void bubbleSort1(Comparable[] data) {

        int position, scan;
        Comparable temp;
        for (position = data.length - 1; position >= 0; position--) {
            for (scan = 0; scan <= position - 1; scan++) {
                if (data[scan].compareTo(data[scan + 1]) < 0) {
                    temp = data[scan];
                    data[scan] = data[scan + 1];
                    data[scan + 1] = temp;
                }
            }
        }
    }

    // 冒泡排序函数2
    public static int[] bubbleSort2(int[] m) {

        int intLenth = m.length;
        /* 执行intLenth次 */
        for (int i = 0; i < intLenth; i++) {
            /* 每执行一次,将最小的数排在后面 */
            for (int j = 0; j < intLenth - i - 1; j++) {
                int a = m[j];
                int b = m[j + 1];
                if (a < b) {
                    m[j] = b;
                    m[j + 1] = a;
                }
            }
        }
        return m;
    }

    public static void main(String[] args) {

        // 冒泡排序1
        Comparable[] c = { 4, 9, 23, 1, 45, 27, 5, 2 };
        bubbleSort1(c);
        for (int i = 0; i < c.length; i++)
            System.out.println("冒泡排序1:" + c[i]);

        System.out.println("*******************");

        // 冒泡排序2
        int[] b = { 4, 9, 23, 1, 45, 27, 5, 2 };
        int[] e = bubbleSort2(b);
        for (int j = 0; j < e.length; j++)
            System.out.println("冒泡排序2:" + e[j]);
    }
}
分享到:
评论

相关推荐

    Java冒泡排序算法

    ### Java冒泡排序算法知识点详解 #### 一、冒泡排序基本概念 冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是...

    java冒泡排序算法

    java冒泡排序算法,sort方法,main方法

    JAVA冒泡排序算法详解

    ### JAVA冒泡排序算法详解 冒泡排序是一种简单的排序算法,它重复地遍历要排序的元素列表,比较每对相邻元素,如果它们的顺序错误就把它们交换过来。遍历列表的工作是重复进行的,直到没有再需要交换的元素,也就是...

    JAVA冒泡排序算法

    冒泡排序算法是一种基础的排序算法,通过重复遍历要排序的数列,比较相邻的两个数,如果前一个比后一个大,则将它们两个对调。每一轮遍历结束后,数列中的最大值就会“冒泡”到数列的末尾。简单来说,就是通过重复...

    Java冒泡排序算法实现

    以下是一个简单的Java冒泡排序算法实现: ```java public class BubbleSort { public static void bubbleSort(int[] array) { int n = array.length; for (int i = 0; i ; i++) { // 外层循环控制排序轮数 for ...

    java代码-使用java解决java冒泡排序算法的源代码

    java代码-使用java解决java冒泡排序算法的源代码 ——学习参考资料:仅用于个人学习使用!

    java 冒泡排序算法

    自己面试的时候遇到的,回来以后用java写了个完整的!

    应用Java和Python实现冒泡排序算法

    冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python...

    java冒泡排序算法代码

    java冒泡排序算法代码 Java冒泡排序算法代码是Java语言中的一种常用的排序算法,通过反复比较和交换相邻元素来实现数组的排序。在本文中,我们将详细介绍Java冒泡排序算法代码的原理、时间复杂度、稳定性等相关知识...

    java冒泡排序java冒泡排序集锦方法!

    以上三个知识点总结了关于 Java 排序的一些基本应用,包括基础的冒泡排序算法、使用标准库 `Collections.sort()` 进行排序以及使用 `RuleBasedCollator` 实现国际化排序等。这些技术对于编写高效、可维护的 Java ...

    用java实现冒泡排序算法

    用 Java 实现冒泡排序算法 冒泡排序是一种简单的排序算法,它的基本思想是通过反复比较和交换相邻元素的位置来实现排序。下面是用 Java 实现冒泡排序算法的详细解释: 1. 排序方法 冒泡排序的排序方法是将被排序...

    java算法——冒泡排序

    * 冒泡排序: * 每次在无序队列里将相邻两个数一次进行比较, * 将小数调到前面,逐次比较,直至将最大的数移到 * 最后。将剩下的N-1个数继续比较,将次大数移至 * 倒数第二位。

    用Java写出冒泡排序的算法

    Java冒泡排序算法详解 冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,依次比较相邻元素,如果他们的顺序错误就把他们交换过来。下面是一个用Java实现冒泡排序的算法: public class Bubblesort { ...

    java基础 经典算法之冒泡排序详解

    1.冒泡排序的原理:每次都从第一个元素开始(索引0),向后两两比较,只要后面的比前面的大,就交换(从大到小) 2.通过画图分析,5个数字排4趟,n数字排n-1趟,而外层的for循环代表的是循环的趟数,所以外层循环的结束条件是...

    java基础冒泡排序.ppt

    冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。 走访元素的工作是重复...

    JAVA冒泡排序和快速排序算法

    在JAVA中,实现这两种排序算法可以使用面向对象的特性,创建一个类如`MaopaoKuaisu.java`,在这个类中定义两个方法,分别实现冒泡排序和快速排序。类的结构可能如下: ```java public class MaopaoKuaisu { public...

    java的两种冒泡排序算法

    ### Java中的两种冒泡排序算法 #### 知识点一:基本冒泡排序算法 冒泡排序是一种简单的排序算法,其基本思想是通过不断地比较相邻元素的大小,并根据需要进行交换,来达到排序的目的。 **代码实现:** ```java ...

    冒泡排序 算法(冒泡,选择,插入,数组排序)

    总的来说,这段代码提供了四种排序算法的实现,分别是冒泡排序、选择排序、插入排序以及Java内置的数组排序。每种排序算法都有其适用场景,理解这些算法可以帮助我们更好地解决实际问题,并根据需求选择合适的排序...

Global site tag (gtag.js) - Google Analytics