При внедрении Quicksort одна из вещей, которую вам нужно сделать, - выбрать опорный стержень. Но когда я смотрю на псевдокод, как показано ниже, неясно, как я должен выбрать точку опоры. Первый элемент списка? Что-то еще?
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))
Может ли кто-нибудь помочь мне понять концепцию выбора точки опоры, и разные сценарии требуют разных стратегий.