十大经典排序算法

编程之家收集整理的这个编程导航主要介绍了十大经典排序算法编程之家,现在分享给大家,也给大家做个参考。

十大经典排序算法 介绍

排序算法是《数据结构与算法》中最基本的算法之一。

排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:

十大经典排序算法

关于时间复杂度

平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。

线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序;

O(n1+§)) 排序,§ 是介于 0 和 1 之间的常数。 希尔排序

线性阶 (O(n)) 排序 基数排序,此外还有桶、箱排序。

关于稳定性

稳定的排序算法:冒泡排序、插入排序、归并排序和基数排序。

不是稳定的排序算法:选择排序、快速排序、希尔排序、堆排序。

名词解释

n:数据规模

k:“桶”的个数

In-place:占用常数内存,不占用额外内存

Out-place:占用额外内存

稳定性:排序后 2 个相等键值的顺序和排序之前它们的顺序相同

网站地址:https://sort.hust.cc/

GitHub:https://github.com/hustcc/JS-Sorting-Algorithm

网站描述:排序算法的 GitBook 在线书籍 《十大经典排序算法》,多语言实现。

十大经典排序算法

官方网站:https://sort.hust.cc/

小编说

以上是编程之家为你收集整理的十大经典排序算法全部内容。

如果觉得编程之家网站内容还不错,欢迎将编程之家推荐给好友。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


javascript-questions,JavaScript 进阶问题列表
angular-starter,Angular入门套件
RunJS,在线编辑、展示、分享、交流你的 JavaScript 代码
Word联盟,一个专注Word教程的网站
NodeSchool,NodeJS教学闯关课程网
from_coder_to_expert,从程序员到CTO,从专业走向卓越,分享大牛企业内部pdf与PPT
Mars,腾讯移动 Web 前端知识库
TypeScript手册,TypeScript使用手册
typescript-book-chinese,TypeScript Deep Dive 中文版
DeepLearning-500-questions,深度学习500问
DIVCSS5,DIV CSS学习与交流平台
ctolib码库,每日更新收录实用的开源项目和资源
project-guidelines,一系列JavaScript项目的最佳实践
awesome-blockchain-cn,一个区块链学习的 github 项目
realworld,由React,Angular,Node,Django等提供支持的示例
wtfjs,一个有趣和棘手的 JavaScript 示例列表
7-days-nodejs,七天学会NodeJS
javascript-algorithms,包含了多种基于 JavaScript 的算法与数据结构
teamtree,在线网站设计教育平台
Functional-Light-JS,一本关于JavaScript中函数式编程的书