Quicksort
Quicksort
Quicksort
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Korrektheit von PARTITION<br />
Behauptung: PARTITION liefert q ∈ {p, . . . , r}:<br />
(A)max{A[k] | p ≤ k < q} ≤ A[q] ≤<br />
min{A[l] | q < l ≤ r}<br />
Beweis: Betrachte den ersten Zeitpunkt t<br />
mit i = j =: h. Beachte: Invariante (3) gilt,<br />
insbesondere A[h] ≥ x.<br />
• Fall I) t liegt nach Zeile 3:<br />
Zeile 4 wird noch genau einmal ausgeführt,<br />
danach j = i − 1 = h − 1;<br />
Zeile 8 wird ausgeführt, danach A[h] = x;<br />
h(= i) wird zurückgegeben;<br />
Behauptung gilt mit q := h.<br />
• Fall II.a) t liegt nach Zeile 4, A[h] > x :<br />
Wie (I).<br />
• Fall II.b) t liegt nach Zeile 4, A[h] = x :<br />
Zeile 4 wird verlassen;<br />
Zeile 8 wird (ohne Wirkung) ausgeführt;<br />
h(= i = j) wird zurückgegeben;<br />
Behauptung gilt mit q := h.<br />
4