※初赛知识总结※

前言

离初赛只有两天了,写这篇博客可能也没多大作用
边刷初赛题边记录一下坑点
就当把自己跳过的坑给后人埋上吧
祈祷我不要初赛退役(笑)

排序算法的稳定性

排序算法的稳定性是指,如果有两个元素\(i=j\),排序后他们的位置关系不变
(即相同值的不同元素在排序前后相对位置不变)
而不是指时间复杂度不会退化

常见的排序方法比较

  1. 冒泡排序:由于两两之间比较,前者比后者大才交换位置,所以相同大小的元素位置不会交换。是稳定的
  2. 选择排序:每次操作中会无顾忌地选择小元素交换位置,会破坏稳定性。不稳定
  3. 插入排序:从最小的序列开始,每次插到自己合适的位置,对其他元素没有影响。稳定
  4. 快速排序:很显然的不稳定排序
  5. 归并排序:合并过程中可以保证元素的位置。稳定
  6. 基数排序:按位操作的排序方式,属性各自拥有优先级。稳定
  7. 希尔排序:没详细了解过,反正是不稳定的
  8. 堆排:用堆的性质更改元素序列,过程中的旋转可能会破坏稳定性。不稳定

猜你喜欢

转载自www.cnblogs.com/tqr06/p/11691966.html