
基本算法
其核心就是递归地:
- 切分元素
- 把其它元素与切分元素进行比较,将其切分到左右
切分:
性能特点
快速排序的一个隐患及其解决方案。
算法改进
如果你的排序代码会被执行很多次或被用在大型数组上,那么可以参考一下下面的改进方法。一般都能将算法性能提升 20%~30%。
切换到插入排序
对于大多数递归排序算法都要牢记两点:
- 递归过程中很可能要处理小数组
- 对于小数组,插入排序很快