Skip to content

比较排序算法的时间复杂度排列

  • 冒泡排序: θ(n^2) 平均时间复杂度
  • 选择排序: θ(n^2) 平均时间复杂度,但是数组元素的交换次数要比冒泡排序少
  • 插入排序: θ(n^2) 最坏时间复杂度,但是在数组基本有序的情况下,时间复杂度为 θ(n)
  • 归并排序: θ(nlogn) 平均时间复杂度,但是需要额外的空间复杂度
  • 快速排序: θ(nlogn) 平均时间复杂度
  • 计数排序: θ(n+k) 期望时间复杂度,其中 k 为数组中的最大值,需要额外的空间复杂度
  • 基数排序: θ(n*k) 期望时间复杂度,其中 k 为数组中的最大值的位数,需要额外的空间复杂度
  • 桶排序: Ω(n) 期望时间复杂度,但是需要额外的空间复杂度,最坏时间复杂度为 O(n^2)
  • 堆排序: O(nlogn) 最坏时间复杂度