Visualizer sortieren
Ein leichter Sortiervisualisierer mit C ++ und SFML.
Ich möchte zum Projekt beitragen!
Eindrucksvoll! Hier finden Sie nützliche Informationen über den Visualizer. Wir akzeptieren auch erste Mitwirkende!
Stellen Sie außerdem sicher, dass Sie die letzten Änderungen von Dev Branch ziehen!
Sortiertypen
- Blasenart
- Bubble -Sortierung funktioniert, indem sie Elemente nebeneinander kontinuierlich austauschen, die am falschen Ort sind. Ab dem Beginn des Datensatzes schwebt jedes Element zu seinem richtigen Punkt. Weitere Informationen zur Bubble -Sortierung finden Sie hier.
- Auswahlsart
- Die Auswahlsart funktioniert, indem Sie zwei Abschnitte haben, die sortierten und unsortierten Abschnitte, und kontinuierlich durch den unsortierten Abschnitt suchen und das kleinste Element in den sortierten Abschnitt legen. Dieser Sortieralgorithmus könnte implementiert werden, wenn stattdessen das größte Element ausgewählt wird. Weitere Informationen zur Auswahlsorte finden Sie hier.
- Insertion -Sortierung
- Die Insertions -Sortierung ähnelt der Auswahlsorte, da beide einen sortierten und ungeortierten Abschnitt haben. Anstatt das kleinste/größte Element kontinuierlich ausgewählt zu haben, wird ein ausgewähltes Element aus dem unsortierten Teil eingesetzt und in den sortierten Abschnitt in die richtige Stelle einfügen. Weitere Informationen zur Einfügungssorte finden Sie hier.
- Schnelle Sortierung
- Schnelle Sortierung ist ein "Kluft und Eroberer" -Algorithmus. Teilen und erobern Sie Algorithmen, indem Sie das Problem in kleinere Teile aufteilen, die kleineren Probleme lösen und dann die Lösungen zu einer endgültigen Lösung kämmen. Schnelle Sortierung funktioniert, indem Sie ein Element als "Drehung" auswählen, die anderen Elemente um die Elemente bewegen, die weniger als der Drehpunkt auf der einen Seite sind und Elemente größer als der Drehpunkt auf der anderen Seite sind, und dann diesen Prozess kontinuierlich mit jeder Seite durchführen. Sobald jedes Element partitioniert wurde, wird die Lösung in das sortierte Array kombiniert. Weitere Informationen zu Schnellart finden Sie hier und mehr zu Klassifik- und Erobereralgorithmen finden Sie hier.
- Cocktail Shaker Sort
- Cocktail Shaker -Sortierung ist eine Variante der Blasenart. Anstatt nur Elemente von unten bis zu seinem richtigen Punkt im Datensatz zu schweben, "sinken" auch die Elemente vom oberen Rand des Datensatzes in seine korrekte Position. Weitere Informationen zu Cocktail Shaker finden Sie hier.
- Bogo Sort
- Die Bogo -Sortierung ist ein ineffizienter Sortieralgorithmus, bei dem es zufällig verschiedene Versionen des ursprünglichen Datensatzes generiert und überprüft, ob es sortiert ist oder nicht. Weitere Informationen zur Bogo -Sortierung finden Sie hier.
- Bitonische Sorte
- Die Bitonic -Sortierung ist ein vergleichsbasierter Sortierungsalgorithmus, der mit paralleler Implementierung ausgeführt werden kann. Innerhalb verschiedener Subtarrays prüft der Algorithmus, ob das erste Element kleiner als das zweite ist und umgekehrt. Es macht das kontinuierlich bei größeren Subtarrays, bis der gesamte Datensatz sortiert ist. Weitere Informationen zu Bitonic -Sortieren finden Sie hier.
- Seltsame Art
- Seltsame Sortierung ist ein Vergleichs-Sortieralgorithmus, der für die Verwendung von Pararell-Prozessoren entwickelt wurde. Sie basiert auf Blasensorten, ist jedoch in zwei Phasen ungerade und sogar in Phase unterteilt. Auf Odd Phase -Algorithmus führt die Blasensortierung bei ungeraden indizierten Elementen während der Phase auch bei gleichmäßigen indizierten Elementen durch. Mehr zu seltsamer Sortier finden Sie hier.
Nutzung
- Raum : Sortieren Sie Sortier
- Backpace : Stop Sortieren
- H : Anzeigehilfe
- F1 : Anzahl der Elemente ändern
- F2 : Änderungszeit zwischen Vergleiche
- Pfeil nach oben / Pfeil nach unten : Sortiertyp ändern
? ️ Download
Anforderungen:
? Linux
- Klonen Das Projekt:
git clone https://github.com/alesbe/sorting-visualizer && cd sorting-visualizer - Run
./install.sh
Windows / MacOS
Herunterladen von Veröffentlichungen
Wenn Sie das Projekt selbst kompilieren möchten, müssen Sie die nächsten Schritte ausführen:
- Laden Sie SFML von der offiziellen Website herunter
- Laden Sie CMake herunter
- Klonen Sie das Repository
- Öffnen Sie
CMakeLists.txt und lokalisieren Sie die variable SFML_DIR . Stellen Sie den Pfad zur Route ein, auf der sich die SFML -CMake -Dateien befinden. Zum Beispiel C:/Program Files (x86)/SFML/lib/cmake/SFML . - Aus dem Root -Verzeichnis des Repositorys führen Sie aus:
mkdir build cd build
cmake ..
cmake -G 'Visual Studio 17 2022' ..
- Im Verzeichnis
/build sollte eine Visual Studio -Lösung sein. Jetzt können Sie die Lösung öffnen und die Datei wie gewohnt mit der Wiedergabetaste kompilieren!
Hinweis: Wenn Sie Visual Studio 2022 nicht verwenden möchten, laden Sie SFML für Ihren Zielkompiler herunter und ändern Sie den CMake -Generator in Schritt 6. Sie können die Liste der Generatoren mit CMake -g überprüfen