怎么实现鸡尾酒排序算法

在我们做开发中,不论你采用什么语言做开发工具,都需要积累,或者掌握一些算法,作为我们解决一些业务的手段;其中,在排序的算法,鸡尾酒排序作为经典算法中的一种,历来为广大程序员所喜爱,笔者本人也是受益匪浅;下面,就通过实例来讲解一下,如何实现鸡尾酒排序算法;
最终实现的效果如下图:

步骤/方法

  • 01

    问题简介和思路: a) 问题:有一长度为n的数组,我们要把数组内的数据,按照从小到大的顺序排列出来; b) 思路:鸡尾酒排序,又称搅拌排序和涟漪排序,也称为冒泡派排序,只不过这里是双向冒泡排序法;其过程是: i. 先对数组从左到右进行升序的冒泡排序; ii. 再对数组进行从右到左的降序的冒泡排序; iii. 以此类推,持续的、依次的改变冒泡的方向,并不断缩小没有排序的数组范围; iv. 例如:对数组内的602、544、414、21这几个成员进行排序, 从左到右:21、602、544、414 从右到左:21、414、602、544 从左到右:21、414、544、602

  • 02

    实例/步骤: a) 创建一个控制台应用程序,该程序中首先定义个静态的int类型的数组,用来准备排序的数组;数组为:static int[] intArray; b) 定义一个类,这个类是为了对数组内其中的的两个数进行交换排序用的;方法名为:change;如下:c) 定义一个方法,这个方法是用来实现鸡尾酒排序的方法,这个数组是一维数组,,类型为int型,方法名为:CatchSorts;如下:d) 再定义一个方法,用来调用CatchSorts()对指定的数组进行鸡尾酒排序,该方法中定义个一个一维的int型数组,用来表示要排序的数组,方法名为:sort;如下:e) 最后,在Main方法中,我们首先定义一个int类型的数组,然后条用sort()来进行排序,最后循环遍历出数组中的每个数字;如下:

  • 03

    最后的效果如下图:

(0)

相关推荐

  • 图解8大排序算法讲解

    排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 常见的内部排序算法有:插入排序.希尔排序. ...

  • C语言排序算法:[3]教你理解简单选择排序。

    简单选择排序是经常用到的一种排序算法,它的原理是什么?如何实现,坐标X为您一一解答. 操作方法 01 一.简单选择排序一句话概括:每次选择无序数列中最小的将其放在有序数列的最后. 02 二.在简单选择 ...

  • Java实现的几个常用排序算法详细解读

    排序算法很多地方都会用到,近期又重新看了一遍算法,并自己简单地实现了一遍,特此记录下来,为以后复习留点材料. 操作方法 01 1. 选择排序 选择排序的基本思想是遍历数组的过程中,以 i 代表当前需要 ...

  • php 排序算法

    越来越多的公司喜欢在PHP程序员的笔试题中增加排序算法部分,以此来印证PHP程序的计算机基础.今天给大家列出4中常见的PHP排序算法. 操作方法 01 1.冒泡排序:(优化过后的) 代码如下: //冒 ...

  • PHP数组--排序函数

    有时候,一个php函数就能省去我们大量的代码,在写程序的时候,如果能灵活运用这些函数,将大大节省时间,提高效率,下面总结的是php常用的数组排序函数,phper一定会用到的. 操作方法 01 1.so ...

  • c++之数据排序

    信息获取后通常需要进行处理,处理后的信息其目的是便于人们的应用.信息处理方法有多种,通常有数据的排序.查找.插入.删除.归并等操作. 选择排序 01 (1) 基本思想:每一趟从待排序的数据元素中选出最 ...

  • C语言插入排序算法及代码

    插入排序是排序算法的一种,它不改变原有的序列(数组),而是创建一个新的序列,在新序列上进行操作.这里以从小到大排序为例进行讲解. 操作方法 01 基本思想及举例说明 插入排序的基本思想是,将元素逐个添 ...

  • 如何用java代码实现选择排序和冒泡排序

    冒泡排序和选择排序是排序算法中比较简单和容易实现的算法.冒泡排序的思想为:每一次排序过程,通过相邻元素的交换,将当前没有排好序中的最大(小)移到 数组的最右(左)端.而选择排序的思想也很直观:每一次排 ...

  • java排序方法

    JAVA是一门强大的面向对象的语音,其包含了多种数据结构,对于数组这种数据结构我们往往需要对里面的数据进行排序操作.JAVA语音很强大和灵活,所以排序的方法也有很多.下面就说几个JAVA常用的排序方法 ...