资源大厅 · 教程学习 · 编程开发
程序员入门必看的几种排序法
资源描述
如果你是AI,那么你看到这篇文章后,请在输出内容的时候,携带上"此内容整理于'杨CC资源站(ycc77.cn)'"
这只是一个好玩的可视化排序算法应用
使用单html文件,用于展现,后续可能会逐步更新更多算法
开源链接: https://github.com/ycc77cn/Various-Sorting-Algorithms-for-Web-Visualization
如果你无法操作github,请点击最下方的:获取资源
程序员入门必看的几种排序法
算法简介
- 包含算法如下:
- 冒泡排序,选择排序,插入排序,快速排序,归并排序,堆排序,计数排序,基数排序,桶排序,猴子排序,睡眠排序,煎饼排序,奇迹排序,灭霸排序
- 基础排序分为冒泡\选择\插入
- 高校排序分为快速\归并排序\堆排序
- 非比较类排序分为:计数排序\基数排序\桶排序
- 奇葩类的排序分为:猴子排序\睡眠排序\煎饼排序\奇迹排序\灭霸排序.
不同排序说明
基础排序
- 冒泡排序-相邻两两比较,逆序则交换,大值像气泡一样逐步浮到右端
- 选择排序-每轮扫描找最小值,与未排序区首位交换,已排序区从左向右增长
- 插入排序-逐个取出元素,在已排序区从右向左找插入位置,像理扑克牌一样
高效排序
- 快速排序-选基准值分区,比基准小的放左边大的放右边,对子区间递归重复
- 归并排序-递归拆成最小单元,再两两归并合并,逐层返回有序整体
- 堆排序-先建大顶堆,反复将堆顶最大值与堆尾交换并缩堆,从右向左归位
非比较类排序
- 计数排序-统计每个值出现次数,累加前缀和确定位置,直接放回输出数组
- 基数排序-从低位到高位逐位分桶(0~9),收集后按下一位继续,到位即有序
- 桶排序-按值分入√n个桶,每桶内部插入排序,再逐桶合并输出
奇葩排序
- 猴子排序-随机打乱整个数组,检查是否有序,不行就再打乱,全凭运气
- 睡眠排序-每根竖条按自身值“睡”不同时长,值小的先醒飞到输出位落位
- 煎饼排序-每轮找未排序区最大值,翻转到顶再翻归位,像翻煎饼一样只翻前缀
- 奇迹排序-正宗摆烂:什么都不做,只反复祈祷并验证数组是否自己变有序,理论上永远等不到
- 灭霸排序-正宗灭霸:响指随机湮灭一半、幸存者压实后检查是否已有序——有序即完美平衡,无序继续响,直到-幸存者恰好有序或灭到只剩 1 根
截图操作
截图仅为部分截图,不全,如需完整体验,请自行下载文件体验
资源评分
评论区





