常见的十个排序算法

常见的十个排序算法

排序算法是《数据结构与算法》中最基本的算法之一。

排序算法可以分为内部排序和外部排序,内部排序是指数据记录在内存中进行排序,而外部排序是指因排序的数据量很大,一次不能在内存种中容纳全部的排序记录,因而在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。

通过比较元素的大小来决定元素间相对次序的排序也称为比较类排序,如经典的插入排序。由于这类排序时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。而非比较类排序则可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序,如计数排序

阅读更多