Hallo 
Und zwar habe ich ein Problem, unsere Aufgabe besteht darin, dass wir uns ein Quelltext von Quicksort suchen sollten und den Quelltext dann kommentieren müssen.
Ich hab nur leider keine Ahnung was in dem Programm vor sich geht..wäre lieb wenn mir jemand ein bisschen helfen würde..vorallem im unteren Teil
Liebe Grüße Steffi
Und zwar habe ich ein Problem, unsere Aufgabe besteht darin, dass wir uns ein Quelltext von Quicksort suchen sollten und den Quelltext dann kommentieren müssen.
Ich hab nur leider keine Ahnung was in dem Programm vor sich geht..wäre lieb wenn mir jemand ein bisschen helfen würde..vorallem im unteren Teil
Java:
package quick; // Name des Packets,welches verwendet wird
public class QuickSort { // Name der Klasse: QuickSort
public static void main(String a[]){ // Main-Methode
int i; // integer i dekliniert
int array[] = {17,24,3,12,7,10 }; // Werte, welche geordnet werden
System.out.println(" Quick Sort\n\n"); //Ausgabe auf Bildschirm
System.out.println("Werte vor dem Sortieren:\n"); // Ausgabe
for(i = 0; i < array.length; i++)//
System.out.print( array[i]+" "); / /Ausgabe
System.out.println();
quick_srt(array,0,array.length-1);
System.out.println();
System.out.print("Werte nach dem Sortieren:\n");
for(i = 0; i <array.length; i++)
System.out.print(array[i]+" ");
System.out.println();}
public static void quick_srt(int array[],int low, int n){
int lo = low; / integer dekliniert
int hi = n; // integer dekliniert
if (lo >= n) { // wenn integer lo größer gleich n -
return; // wiederholt sich der Vorgang
}
int mid = array[(lo + hi) / 2]; //
while (lo < hi) {
while (lo<hi && array[lo] < mid) {
lo++;
}
while (lo<hi && array[hi] > mid) {
hi--; }
if (lo < hi) {
int T = array[lo];
array[lo] = array[hi];
array[hi] = T;}
}
if (hi < lo) {
int T = hi;
hi = lo;
lo = T;}
quick_srt(array, low, lo);
quick_srt(array, lo == low ? lo+1 : lo, n);
}
}
Liebe Grüße Steffi
Zuletzt bearbeitet von einem Moderator: