内部排序(概述)

作者:海鹰
本人才疏学浅,若有纰漏,虚心请教
本文讲述内部排序相关概念
版权所有,未经允许,请勿随意转载。

排序(Sorting)

是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。

内部排序-外部排序

由于待排序的记录数量不同,使得排序过程中涉及的存储器不同,可将排序方法分为两大类:
一类是内部排序,指的是待排序记录存放在计算机随机存储器中进行的排序过程;
另一类是外部排序,指的是待排序记录的数量很大,以致内存一次不能容纳全部记录,在排序过程中尚需对外存进行访问的排序过程。

内部排序的分类

如果按排序过程中依据的不同原则对内部排序方法进行分类,则大致可分为插入排序交换排序选择排序归并排序计数排序等五类。

内部排序根据工作量分类

如果按内部排序过程中所需的工作量来区分,则可分为3类:

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