c++排序方法及记忆

Posted BHY_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++排序方法及记忆相关的知识,希望对你有一定的参考价值。

1、算法分类

2、算法复杂度

稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。

不稳定:如果a原本在b的前面,而a=b,排序之后 a 可能会出现在 b 的后面。

时间复杂度:对排序数据的总的操作次数。反映当n变化时,操作次数呈现什么规律。

空间复杂度:是指算法在计算机内执行时所需存储空间的度量,它也是数据规模n的函数。 

记忆方式:

1.关于稳定性:

不稳定:快选堆希(快速排序、选择排序、堆排序、希尔排序)

稳    定:插冒归计基(简单插入排序、冒泡排序、归并排序、计数排序、基数排序)

2.关于移动次数和关键字顺序无关的排序

顺口溜:一堆(堆排序)海龟(归并排序)选(选择排序)基(基数排序)友

https://www.cnblogs.com/onepixel/articles/7674659.html

1、总排序趟数与初始状态无关的有:(除了快速排序和优化的冒泡,其他都是)

2、算法复杂度与初始状态无关的有:堆排序归并排序选择排序基数排序

3、元素总比较次数与初始状态无关的有:选择排序基数排序

4、元素总移动次数与初始状态无关的有:归并排序基数排序

以上是关于c++排序方法及记忆的主要内容,如果未能解决你的问题,请参考以下文章

生产质量管理口诀快速记忆

《学习之道》第十章视觉和空间记忆的原因

算法笔记 排序算法完整介绍及C++代码实现 HERODING的算法之路

索引系列知识三:索引总结

C++中sort()及qsort() (不完整介绍)

普通链表的各种排序及常用操作