1

有谁知道完整的技术词汇来描述所有不同版本的快速排序?

我知道的一个是“胖枢轴”[A](其中与枢轴匹配的所有项目都放置在子数组的中间,并被排除在进一步的排序之外)。

我想知道的是,当一个元素(枢轴)放在中间并从排序[B] 中排除时,以及零元素放在中间[C] 的位置。

下面是每个分区的示例:
输入子数组是 5,3,2,9,5,7
[A] 给出 [3,2],5,5,[9,7]
[B] 给出 [3,2 ],5,[9,5,7]
[C] 给出 [3,2,5],[9,5,7]

4

2 回答 2

3

嗯,快速排序

以下是有关快速排序变体的一些信息。

于 2009-02-21T23:55:10.927 回答
0

在我在各种教科书中读到的描述中,变体没有通用的指定名称。它们标有摘要描述,并且确切的标签会有所不同。例如,您提到的“胖枢轴”有时称为“三元分割”,有时称为“三路分区”,有时称为“荷兰国旗算法”。涉及罗伯特·塞奇威克的不同作品至少使用了其中的两个。

于 2011-09-28T11:34:13.667 回答