快速排序 & 优化 lfsun666 2023-11-20 35 阅读1分钟 快速排序是一种基于分治思想的排序算法。 其核心思想是选择一个基准元素,将数组分成两个子数组,一个小于基准的子数组,一个大于基准的子数组,然后递归地对子数组进行排序。 最终,所有子数组都在其最终排序位置上,从而完成整个排序过程。这个算法通常具有较好的性能,平均时间复杂度为O(n log n)。 优化方式: 随机化选择基准元素,减少最坏情况的概率。 使用"三数取中法"来选择基准元素,降低最坏情况的可能性。 对小规模子数组使用插入排序。 尾递归优化,减少递归调用的栈空间使用。