如果数组具有偶数个元素,那么哪个值成为Quicksort的“完美”枢轴?

时间:2019-10-23 16:31:30

标签: sorting

假设我们有一个包含-5,1,-9,-3的数组。我假设完美的支点是将数组划分为两个相等的子数组的支点,但是只有元素数量为奇数的数组才有可能。据我了解,在这种情况下,理想的枢轴是-3还是1,因为它们不是具有最低或最高价值的元素?

1 个答案:

答案 0 :(得分:0)

在许多情况下,多个枢纽同样有效。此外,如果使用三元细分,所有等于枢轴的项都分组在中间,则枢轴的最佳选择不仅取决于枢轴上方和下方的元素数量,还取决于其价值分布。例如,在给定[1,2,2,2,3,4,5,6,7]的情况下,中位数为3,但围绕3进行旋转将需要在左侧进行一次旋转操作,而在右侧进行两个旋转操作, 4将只需要在每一侧进行一次附加操作。