| 排序算法 | 概述 | 时间复杂度 |
|---|---|---|
| 冒泡排序 | 两两比较,每次遍历最小元素到尾端 | O(N^2) |
| 插入排序 | 比较元素插入已排序队列 | O(N^2) |
| 希尔排序 | 选定步长,分组排序,缩小步长至1,插入排序 | O(N^2) |
| 选择排序 | 每次选择未排序中最小值,放入已排序尾端 | O(N^2) |
| 快速排序 | 找到一个基数,保证左边的数比其小右边的数比其大,递归 | O(N^2) |
| 归并排序 | 数据分开,再分开,一直到长度为2的各组合,合并 | O(NlogN) |
| 堆排序 | 将待排序列维护成一个最大堆,取出根节点,放置排序序列中,堆尾端数据放置根节点,维护为最大堆,递归 | O(NlogN) |
| 计数排序 | ??? | O(d*(N+K)) |
| 桶排序 | ??? | ? |
| 基数排序 | ??? | ? |
常见算法----排序算法1
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 摘要:本文简单介绍几个常见的排序算法,包括:冒泡排序、选择排序、插入排序、快速排序、归并排序、希尔排序。列出的代码...