本章依旧建立开始两篇文章的基础上(冒泡排序、插入排序的传送门)
一.快速排序
来自Wiki的介绍:
Quicksort(有时称为分区交换排序)是一种O(N log N)有效 排序算法,用作按顺序放置数组元素的系统方法。由英国计算机科学家Tony Hoare于1959年开发[1]并于1961年发表,[2]它仍然是一种常用的排序算法。如果实施得当,它可以比其主要竞争对手快两到三倍,合并排序和堆垛。[3] [ 矛盾 ]
Quicksort是一种比较排序,意味着它可以对任何类型的项目进行排序,其中定义了“小于”关系(正式,总顺序)。在高效实现中,它不是稳定的排序,这意味着不保留相等排序项的相对顺序。Quicksort可以在阵列上就地操作,需要少量额外的内存来执行排序。它与选择排序非常相似,只是它并不总是选择最坏情况的分区。
快速排序的