Reale Algorithmen Visualisierungen
Überblick
Dieses Repository enthält Visualisierungen mehrerer komplexer Algorithmen, die ich als Teil meiner realen Algorithmenklasse unter Verwendung der Bridges-API erstellt habe. Die Visualisierer zeigen, wie verschiedene Algorithmen in der Praxis funktionieren und einen interaktiven und visuellen Ansatz zum Verständnis ihres Verhaltens und ihrer Leistung bieten. Sie können die Visualisierungen bei Bridges-CS untersuchen.
Algorithmen abgedeckt
Während des gesamten Kurses habe ich die folgenden Algorithmen implementiert und visualisiert:
1. Sortieren von Algorithmen
- Sortierung zusammenführen : Ein Divide-and-Conquer-Sortieralgorithmus mit einer zeitlichen Komplexität von O (n log n).
- QuickSort : Ein weiterer effizienter Sortieralgorithmus, der das Array verteilt und die Partitionen rekursiv sortiert.
2. Grafikdarstellung und Traversal
- Breadth-First Search (BFS) : Erforscht alle Knoten in der vorliegenden Tiefe, bevor Sie sich auf die nächsten Tiefenebene zu Knoten bewegen.
- Tiefe-First Search (DFS) : Erforschen Sie vor dem Rückverfolgen so weit wie möglich an jedem Zweig.
- Anwendung : Implementierte BFS zur Berechnung von Specknummern und die untersuchte Graphendarstellung unter Verwendung von Adjazenzlisten und Matrizen.
3. Graphalgorithmen
- Der kürzeste Pfadalgorithmus von Dijkstra : Findet den kürzesten Pfad zwischen Knoten in einem Diagramm.
- Prims Minimum Spanning Tree (MST) : Berechnet den minimalen Spannungsbaum eines Diagramms.
- Projekte : Angewandte kürzeste Pfadanalyse auf OpenStreetmap -Daten und extrahierte Zentrumlinien aus tubulären Strukturen unter Verwendung von MST.
4. String Matching
- Horspool -Algorithmus : Ein effizienter String -Matching -Algorithmus, der in Gen -Sequenz -Alignment -Projekten verwendet wird und sowohl globale als auch lokale Ausrichtung ermöglicht.
5. Suche und Indizierung
- Binäre Suche : Ein logarithmischer Zeitsuchalgorithmus zum Finden von Elementen in einem sortierten Array.
- PageRank : Implementierte einen PageRank -Algorithmus mit Wikipedia -Schauspieler/Filmdaten zur Indizierung und Ranking -Webseiten.
- Räumliche Suchbäume : Erforschte räumliche Datenstrukturen wie Quadtrees.
6. Andere Algorithmen
- Problem mit reisender Verkäuferin : Gebrauchte Prims MST, um die Reiseverkäufer -Tour durch US -Städte zu approximieren.
- Rucksack Problem : Angewandte dynamische Programmierechniken zur Lösung dieses Optimierungsproblems.
Projekte und Visualisierer
Jeder der oben genannten Algorithmen wurde mithilfe der Bridges -API implementiert und visualisiert. Die Visualisierer können über die Bridges-CS-Plattform untersucht werden. Diese Projekte zeigen die reale Anwendung komplexer Algorithmen und bieten ein intuitives Verständnis ihrer Ausführung.
Projekte:
- BFS- und DFS -Traversal -Visualizer
- Dijkstras kürzester Weg Finder
- Zusammenführen Sortier- und Quicksort -Visualisierer
- PageRank -Algorithmus auf Wikipedia -Daten
- Gensequenz -Ausrichtungsvisualisierer
Wie man rennt
- Klonen Sie dieses Repository:
git clone https://github.com/sudo-amancodes/real-world-algorithms-visualizers.git
- Führen Sie die Labordateien für ein bestimmtes Labor aus:
Verwendete Technologien:
- Python: Programmiersprache für die Implementierung von Algorithmus beginnen.
- Java: Kernprogrammiersprache für die Implementierung von Algorithmus.
- Bridges API: Wird zum Erstellen von Visualisierungen der Algorithmen verwendet.
Demo:


Screenshot der Quadtree- und Quadtree -Suchschnittstelle.