下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
论坛 >编程语言 >数据结构&算法实践—鸡尾酒排序

数据结构&算法实践—鸡尾酒排序

希尔瓦娜斯发布于 2018-04-19 09:32查看:1333回复:7

数据结构&算法实践——Python

第一部分列表(目录主要来自于维基百科)

模块一:经典排序实现

交换排序法

冒泡排序 |鸡尾酒排序 |奇偶排序 |梳排序 |地精排序(gnome_sort) |Bogo排序|快速排序

选择排序法

选择排序 | 堆排序

插入排序法

插入排序 | 希尔排序 | 二叉查找树排序 | Library sort | Patience sorting

归并排序法

归并排序 | Strand sort

非比较排序法

基数排序 | 桶排序 | 计数排序 | 鸽巢排序 | Burstsort | Bead sort

其他

拓扑排序 | 排序网络 | Bitonic sorter | Batcher odd-even mergesort | Pancake sorting

低效排序法

Bogosort | Stooge sort

模块二:经典查找

模块三:数据结构(后续补充完整,树和图是大头,包含很多分类和经典算法)

线性表   队列   栈   堆   树  图

排序>>交换排序>>鸡尾酒排序

image.png

伪代码:

image.png


鸡尾酒排序是冒泡排序的变种——双向冒泡排序

从伪代码可以看到,每一轮循环,从前到后一次正向冒泡,之后从后往前再进行一次逆向冒泡(每一轮存在两个数被排序)

可以看到的表现是两边先排序好,逐渐向中间有序

示例:

image.png

详细比较过程:

image.png

第一轮 正向

image.png


第一轮 逆向

image.png

本数组共比较18次,而使用带标志冒泡排序需要21次

  1. start

实现代码

image.png

改换成while

image.png


收藏(0)0
查看评分情况

全部评分

此主贴暂时没有点赞评分

总计:0

回复分享

版主推荐

    共有7条评论

    • IT宅男
    • mr jack
    • Mr ken
    • Mright
    • cappuccino
    • YUI
    • 课课家运营团队
    • 课课家技术团队1
    • 酸酸~甜甜
    • 选择版块:

    • 标题:

    • 内容

    • 验证码:

    • 标题:

    • 内容

    • 选择版块:

    移动帖子x

    移动到: