Der schnelle Quicksort ist aufwendiger zu programmieren, aber bei weitem Leistungsstärker als der Bubblesort.
Bei der Arbeit am Quicksort wurden mir die gleichen Anforderungen auferlegt, wie beim Bubblesort.
Das sehr zuverlässige Ergebn meiner Arbeit, der Quicksort, kann in der unteren Box begutachtet werden.
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Program { public static int[] Quicksort(int[] Feld, int Links, int Rechts) { int i = Links; int j = Rechts; double getTogether = i + j; double midFeld = getTogether / 2; double pivot = Feld[Convert.ToInt16(midFeld)]; do { while (Feld[i] < pivot && i < Rechts) { i++; } while (Feld[j] > pivot && j > Links) { j--; } if (i <= j) { int temp = Feld[i]; Feld[i] = Feld[j]; Feld[j] = temp; i++; j--; } } while (i < j); if (Links < j) { Quicksort(Feld, Links, j); } if (i < Rechts) { Quicksort(Feld, i, Rechts); } return Feld; } public static void Main(string[] args) { Console.WriteLine("Bitte geben Sie die zu sortierenden Zahlen\nseparat mit \"ENTER\" getrennt voneinander ein.:\n"); Console.WriteLine("(Abbruch mit \"0\" oder mit \"ENTER\" ohne Eingabe.)\n"); try { int i = 0; int j = 0; args_[j] = Console.ReadLine(); if (args_[j] != "" & args_[j] != "0") { intargs_[j] = Convert.ToInt16(args_[j]); } while (args_[j] != "0" & args_[j] != "") { j++; args_[j] = Console.ReadLine(); if (args_[j] != "" & args_[j] != "0") { intargs_[j] = Convert.ToInt16(args_[j]); } } Console.WriteLine("\n"); int[] intargs2_ = Quicksort(intargs_, i, j); Console.WriteLine("Die sortierte Ausgabe (Quicksort):\n"); foreach (int show in intargs2_) { Console.Write((show + " ")); } } catch(Exception) { Console.WriteLine("\nEine Fehler ist aufgetauscht:\n"); Console.WriteLine("- Nur Zifferreihen sind bei der Eingabe erlaubt."); Console.WriteLine("- Die Größe der Zahlen darf -32.768 und 32.767 nicht unter- bzw. überschreiten. (16-bit Integer signed)."); } Console.ReadLine(); } } }







Seite 1 von 1 1
Ist echt genial. Wäre ich selbst nie drauf gekommen.
Jetzt muss ich den Quellcode nur noch verstehen
Der Quicksort ... Wirklich wesentlich schneller als der Bubblesort im sortieren.