Quicksort ist eigentlich ziemlich einfach zu verstehen, wenn sie das grundlegende Zählen und Teilen durch 2 verstehen. Bilden Sie ein Bündel von X Karteikarten, nummerieren Sie sie 1 - X und mischen Sie es. Dann ist hier die Erklärung:
OK, wir haben hier dieses Kartenspiel (sagen wir 20). Wir wollen sie in eine Reihenfolge bringen, also ist 1 zuerst, dann 2, dann 3 und so weiter. Hier ist eine sehr schnelle Möglichkeit, dies zu tun.
Lassen Sie uns zuerst durch dieses Deck gehen und zwei Stapel daraus machen. Die Hälfte von 20 ist 10, also geht alles, was größer als 10 ist, in diesen Stapel auf der rechten Seite, und alles, was kleiner ist, geht in diesen Stapel auf der linken Seite. (Stellen Sie sicher, dass Sie demonstrieren, während Sie gehen.)
Jetzt machen wir dasselbe mit den kleineren Pfählen. Was ist die Hälfte von 10? (Jemand sagt "fünf!") Das stimmt! Alles, was größer als 5 ist, geht rechts in diesen Stapel, und alles, was kleiner ist, geht links in diesen Stapel.
Und hier haben wir die Gruppe, die größer als 10 ist. Also ist die Hälfte von 10 5 und was ist 10 plus 5? (Jemand sagt "fünfzehn!") Das stimmt! Alles, was größer als 15 ist, geht rechts in diesen Stapel, und alles, was kleiner als 15 ist, geht links in diesen Stapel.
Und jetzt werden die Stapel so klein, dass Sie sie leicht ansehen und ordnen können. Schauen Sie, hier haben wir 2, 4, 5, 3, 1
. Also vertauschen wir sie einfach so, und Sie können sehen 1, 2, 3, 4, 5
. Machen wir also dasselbe mit den anderen Pfählen, und dann ordnen wir die Pfähle einfach und schauen! Sie sind in der Reihenfolge von 1 bis 20!
Herzliche Glückwünsche. Sie haben gerade ein paar Kindern die Grundprinzipien eines adaptiven Quicksort-Algorithmus beigebracht! Je nach geistiger Reife kann man ein bisschen tiefer gehen, aber weit darüber hinaus erfordert es ein gewisses Verständnis der formalen Logik.
Es ist schwieriger, seine Komplexität zu beweisen. Dies ist eines der Dinge, die formale Logik erfordern, und sie müssen zunächst die Grundprinzipien der Big-O-Notation verstehen. Vielleicht möchten Sie diesen Teil zuerst abwarten.