【发布时间】:2010-09-14 22:00:39
【问题描述】:
在实现快速排序时,您必须做的一件事就是选择一个轴。但是当我看下面这样的伪代码时,我不清楚我应该如何选择枢轴。列表的第一个元素?还有什么?
function quicksort(array)
var list less, greater
if length(array) ≤ 1
return array
select and remove a pivot value pivot from array
for each x in array
if x ≤ pivot then append x to less
else append x to greater
return concatenate(quicksort(less), pivot, quicksort(greater))
谁能帮我理解选择支点的概念,以及不同的场景是否需要不同的策略。
【问题讨论】:
标签: algorithm sorting pseudocode quicksort