归并排序和快速排序都采用递归实现,也都是不稳定排序。
快速排序的核心是划分(partition):选定基准,将数组分为小于和大于基准的两部分,再递归处理。注意最坏情况发生在数组已有序时。
快排在数组已有序时退化为O(n²)。选基准尽量用三数取中法避免最坏情况。分区时注意边界处理。
【考点】排序算法稳定性|递归实现
GESP 五级《算法基础》模块,排序算法性质判定。命题人用"都采用递归实现,也都是不稳定排序"这个复合断言卡住学生:五级只要求掌握稳定性概念,但学生容易把"不稳定"当成排序算法的固定标签背下来,看到归并排序立刻想"稳定"却卡在题干前半句的递归描述上,犹豫要不要拆成两个命题判断。