内部排序算法

简介

内部排序算法就是指内存中的排序算法,而外部排序算法则是指待排序数据过多,无法一次性加载到内存中,排序过程需要读取磁盘,因此需要考虑磁盘 IO 的消耗!

内部排序算法分类

内部排序算法按照操作类型可大致分为五类:①插入排序;②交换排序;③选择排序;④归并排序;⑤计数排序;
内部排序算法按照时间复杂度可大致分为三类:

  1. 简单排序方法,时间复杂度:O(n^2)
  2. 先进排序方法,时间复杂度:O(nlogn)
  3. 基数排序,时间复杂度:O(d * n)

插入排序

插入排序又可细分为以下三类:

  1. 直接插入排序(Straight Insertion Sort):将一个记录插入到已排好序的有序表中,从而得到一个新的记录数增 1 的有序表;
  2. 折半插入排序(Binary Insertion Sort):在直接插入排序算法上加上折半查找思维来优化;
  3. 2-路插入排序:
  4. 希尔排序(Shell's Sort),又称缩小增量排序(Diminishing Increment Sort):
posted @ 2018-04-07 11:46  optor  阅读(192)  评论(0编辑  收藏  举报