HoarePartitionierung
Die HoarePartitionierung ist ein Partitionierungsverfahren, das im Quicksort-Algorithmus verwendet wird. Sie wurde von C. A. R. Hoare im Jahr 1962 eingeführt. Das Verfahren teilt ein Array grob um einen Pivot-Wert in zwei Bereiche und bildet damit die Grundlage für die rekursiven Sortier-Schritte.
Das Verfahren verwendet zwei Indizes, die von den gegenüberliegenden Enden des zu sortierenden Bereichs nach innen
Nach der Partition gilt grob: Alle Elemente von lo bis j gehören zur linken Seite und sind
Die Zeitkomplexität beträgt im Durchschnitt O(n log n); im schlechtesten Fall kann sie O(n^2) erreichen, insbesondere
Im Vergleich zur Lomuto-Partitionierung erfordert die Hoare-Version meist weniger Vertauschungen und arbeitet robust bei vielen Datensätzen.