美文网首页
一种改进的冒泡排序(抖动排序、双边冒泡排序)

一种改进的冒泡排序(抖动排序、双边冒泡排序)

作者: 胶布小子 | 来源:发表于2018-08-17 15:25 被阅读0次

本文为原创文章,转载请注明出处,谢谢你……

喜欢java并发编程的请加群:736156823
开始-->
冒泡排序(抖动排序、双边冒泡排序)
代码如下:

    // 有效的数组下标
    public void shardingBubble(int a[], int left, int right) {
        if (null == a) {
            return;
        } else if (left < 0 || right < 0) {
            return;
        } else if (a.length <= 0) {
            return;
        } else if (right - left <= 0) {
            return;
        } else {
            int lf = left;
            int rf = right;
            out:
            for (int i = 0; i <= right; i++) {
                // 从右边开始,也就是小的上浮
                if ((i % 2) == 0) {
                    boolean swap = false;
                    for (int j = rf; j > lf; j--) {
                        if (a[j] < a[j - 1]) {
                            swap(a, j - 1, j);
                            swap = true;
                        }
                    }
                    lf = lf + 1;
                    if (!swap) {
                        break out;
                    }
                } else {
                    // 从左边开始,也就是大的下沉
                    boolean swap = false;
                    for (int k = lf; k < rf; k++) {
                        if (a[k] > a[k + 1]) {
                            swap(a, k, k + 1);
                            swap = true;
                        }
                    }
                    rf = rf - 1;
                    if (!swap) {
                        break out;
                    }
                }
                if (lf >= rf) {
                    break out;
                }
            }
        }
    }

喜欢java并发编程的请加群:736156823

有问题欢迎指正,这是新鲜出炉的
代码未全面测试,留给你吧,哈哈……
结束-->
本文为原创文章,转载请注明出处,谢谢你……

相关文章

  • 一种改进的冒泡排序(抖动排序、双边冒泡排序)

    本文为原创文章,转载请注明出处,谢谢你…… 喜欢java并发编程的请加群:736156823开始-->冒泡排序(抖...

  • 排序-鸡尾酒排序

    鸡尾酒排序,也叫定向冒泡排序,是冒泡排序的一种改进。此算法与冒泡排序的不同处在于从低到高然后从高到低,而冒泡排序则...

  • JS算法笔记 - 排序

    冒泡排序 改进冒泡排序 选择排序 快速排序 在JS中相对较快 插入排序 改进:二分插入排序 希尔排序 动态定义间隔...

  • 排序算法

    冒泡 快速排序 快速排序(Quicksort)是对冒泡排序的一种改进,它的基本思想是:通过一趟排序将要排序的数据分...

  • 看图说话排序算法之冒泡排序

    排序算法的种类非常多,这里总结冒泡排序和对冒泡排序的改进---快速排序的循环实现和递归实现。 一丶冒泡排序 假设待...

  • dailyLearning -- 排序算法

    目录: 冒泡排序 快速排序 选择排序 插入排序 归并排序 冒泡排序 冒泡排序(Bubble Sort),是一种计算...

  • 详解排序算法--插入排序和冒泡排序

    冒泡排序插入排序插入排序和冒泡排序分析 冒泡排序 冒泡排序(英语:Bubble Sort,台湾另外一种译名为:泡沫...

  • 排序算法

    排序算法 冒泡排序 选择排序 直接插入排序 希尔排序 堆排序 归并排序 快速排序 冒泡排序 冒泡排序是一种交换排序...

  • 排序算法

    常见的排序算法有: 冒泡排序 快速排序 插入排序 归并排序 堆排序 1. 冒泡排序 冒泡排序是一种极其简单的排序算...

  • 排序算法篇_快速排序法

      快速排序(Quick Sort)法和冒泡排序法类似,都是基于交换排序思想的。快速排序对冒泡排序法进行了改进,从...

网友评论

      本文标题:一种改进的冒泡排序(抖动排序、双边冒泡排序)

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