Quellcode und Xcode-Projekt „Algorithm Exquisite Explanation: C Language Description“, Linux-Projekt
Verwenden Sie einfach Xcode, um MasteringAlgorithms.xcodeproj
auf dem Mac zu öffnen. Algorithms.xcodeproj
ist das Dateiprojekt der Algorithmusbibliothek. Jedes Beispiel ist eine separate Ausführungsdatei.
Mac- oder Linux-Befehlszeile
Sie benötigen lediglich eine einfache C-Kompilierungsumgebung cc
Führen Sie dann ./run bfs
aus, wobei bfs
das Beispielverzeichnis in Example
ist.
Sie können auch cc
gcc
usw. verwenden gcc source/*.c Example/bfs/main.c -I ./include -o bfs && ./bfs
Datenstruktur
verlinkte Liste
- einfach verknüpfte Liste
- Seitenrahmenverwaltung
- doppelt verkettete Liste
- zirkuläre verknüpfte Liste
- Seitenersatz der zweiten Chance
Stapel und Warteschlangen
- Stapel
- Warteschlange
- Event-Handling
versammeln
- versammeln
- Inkassoabdeckung
Hash-Tabelle
- verkettete Hash-Tabelle
- Symboltabelle
- Adress-Hash-Tabelle öffnen
Baum
- Binärbaum
- Durchquerung eines Binärbaums
- binärer Suchbaum
Heap und Prioritätswarteschlange
- Haufen
- Prioritätswarteschlange
- Paketsortierung
Bild
- Bild
- Tiefe Suche nach Diagrammen
- Suche nach Diagrammbreite
Algorithmus
Sortieren und suchen
- Einfügungssortierung
- Schnelle Sortierung
- Verzeichnisliste
- Sortierung zusammenführen
- Zählsortierung
- Radix-Sortierung
- Binäre Suche
- Rechtschreibprüfung
Numerische Berechnung
- Polynominterpolation
- Methode zur Schätzung der kleinsten Quadrate
- Gleichungslösung
Datenkomprimierung
- Bitoperationen
- Huffman-Codierung
- Optimierung der Netzwerkübertragung
- LZ77
Datenverschlüsselung
- DES-Algorithmus
- Blockverschlüsselungsmodus
- RSA-Algorithmus
Graphalgorithmus
- minimaler Spannbaum
- kürzester Weg
- Route mit der kürzesten Distanz
- Problem mit Handlungsreisenden
geometrischer Algorithmus
- Testen Sie, ob sich Liniensegmente schneiden
- Berechnung der konvexen Hülle
- Länge des sphärischen Bogens
- Der ungefähre Abstand zwischen zwei Punkten auf der Erde