Probiert man den Alogrithmus mit der Zahlenfolge A = { A[1]=733, A[2]=727, A[3]=679, A[4]=697, A[5]=738, A[6]=712, A[7]=726, A[8]=707} So tritt in der Funktion "Teile" bereits in der zweiten Iteration ein Fehler auf. Teile wird aufgerufen mit Teile(1,8). Das Pivotelement ist 707. Die Schleife wird mit i=1 und j=8 gestartet und endet mit i=2 und j=7. Die Elemente A[1] und A[8] werden vertauscht. A = { A[1]=707, A[2]=727, A[3]=679, A[4]=697, A[5]=738, A[6]=712, A[7]=726, A[8]=733} Jetzt wird die Schleife mit i=2 und j=7 gestartet, sie endet mit i=j=3 und A[2] und A[4] werden getauscht. A = { A[1]=707, A[2]=697, A[3]=679, A[4]=727, A[5]=738, A[6]=712, A[7]=726, A[8]=733} Die Schleife wird verlassen und i=3 wird zurückgeliefert. Damit entstehen die neuen Teilmengen {A[1], A[2]} und {A[3] .. A[8]}. A1 = { A[1]=707, {A[2]=697} A2 = { A[3]=679, A[4]=727, A[5]=738, A[6]=712, A[7]=726, A[8]=733} Das ist der Fehler. A[3] hätte in A1 landen müssen, weil es kleiner als das Pivotelement 707 ist ! Ich würde den Algorithmus verwenden, der unter Quicksort-Uni-Flensburg zu finden ist. (nicht signierter Beitrag von Abkruger 12:16, 3. Dez. 2007 (CET) )