【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、元素总移动次数与初始状态无关的有:归并排序基数排序

猜你喜欢

转载自blog.csdn.net/qq_15947787/article/details/81092330
今日推荐