前言:文中大部分为本人收集整理,综合学习资料,个人理解……。希望能帮助你少掉些头发,早日走出理解的深渊。因为写作较为仓促文中内容难免会有纰漏,发现可评论区回复(无奖)。
排序(Sort)
- 分析排序算法的执行效率、内存消耗、稳定性(应对各种极端情况的时间空间复杂度波动)
- 有序度是数组中具有有序关系的元素对的个数
- 完全有序的数组的有序度叫满有序度,N*(N-1)/2
- 逆序度 = 满有序度 - 有序度
- 排序的过程就是一种增加有序度,减少逆序度的过程,最后达到满有序度,此时说明排序完成
- 排序是针对数据的排序,而常见数据的底层存储结构无非就是数组和链表,而这两种结构的排序实现虽然大同小异但各有各的优缺点。
补充:(和线性代数中的概念差不多)
- 满有序度:所有排列的个数
- 有序度:满足排序规则的排列个数
- 逆序度:未满足排序规则的排列个数
- 例:
- 有集合(5,6,9,0,2)可得以下有序排列
(5,6)、(5,9)、(5,0)、(5,2)
(6,9)、(6,0)、(6,2)
(9,0)、(9,2)
(0,2)
- 以升序为排列规则得:
满有序度 = (n - 1)* n / 2 = (5 - 1) * 5 / 2 = 10
有序度 = 3 (红色标注部分)
逆有序度 = 10 - 3 = 7;
- 有序区、无序区:已经排序完成的部分就是有序区,还未排序的部分就是无序区。
十大经典排序算法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/124403.html