【第 31 题:以上十种排序算法的区别有哪些?】算法分类(比较和非比较)非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破 O(nlogn),因此称为非线性时间比较类排序
线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序

文章插图
排序算法评价标准时间复杂度
时间复杂度分为:最坏时间复杂度、平均时间复杂度、最好时间复杂度 。主要反应的是执行程序的次数
空间复杂度
是对一个算法在运行过程中临时占用存储空间大小的量度
稳定性
稳定性的意思是对于序列中键值(Key value)相同的元素,它们在排序前后的相对关系保持不变 。对于 int 这样的基本数据类型,稳定性基本上是没有意义的,因为它的键值就是元素本身,两个元素的键值相同他们就可以被认为是相同的 。但对于复杂的数据类型,数据的键值相同,数据不一定相同,比如一个 Student 类,包括 Name 和 Score 两个属性,以 Score 为键值排序,这时候键值相同元素间的相对关系就有意义了 。
总结就是经过排序之后,能使值相同的数据保持原顺序中的相对位置不变
内排序
所有排序操作都在内存中完成,适用于数据规模不是特别大的情况
外排序
由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行
各排序算法总结

文章插图
文章的内容/灵感都从下方内容中借鉴
- 【持续维护/更新 500+前端面试题/笔记】https://github.com/noxussj/Interview-Questions/issues
- 【大数据可视化图表插件】https://www.npmjs.com/package/ns-echarts
- 【利用 THREE.JS 实现 3D 城市建模(珠海市)】https://3d.noxussj.top/
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
