coursera上斯坦福的算法专项在讲到快速排序时,称其为最优雅的算法之一.快速排序确实是一种比较有效的排序算法,很多类库中也都采用了这种排序算法,其最坏时间复杂度为$O(n^2)$,平均时间复杂度为$O(nlogn)$,且其不需要额外的存储空间. 基本步骤 快速排序主要使用了分治的思想,通过选取一个pivot,将一个数组划分为两个子数组.其步骤为:1.从数组中选择一个元素作为pivot2.重新排列数组,小于pivot的在pivot的左边,大于pivot的在其右边.3.递归地对划分后的左右两部分…