Quicksort: Auswahl des Pivots

Bei der Implementierung von Quicksort müssen Sie unter anderem einen Pivot auswählen. Aber wenn ich mir den Pseudocode wie den folgenden ansehe, ist es nicht klar, wie ich den Pivot wählen soll. Erstes Element der Liste? Etwas anderes?

 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))

Kann mir jemand helfen, das Konzept der Auswahl eines Pivots zu verstehen und festzustellen, ob unterschiedliche Szenarien unterschiedliche Strategien erfordern oder nicht.

Antworten auf die Frage(13)

Ihre Antwort auf die Frage