Algorithmen und Datenstrukturen in C++
Algorithmen und Datenstrukturen in C++
Zusammenfassung:
Das Buch „Algorithmen und Datenstrukturen in C++“ ist ein umfassender praktischer Leitfaden, der alle wichtigen Themen abdeckt, die für eine sichere Beherrschung der Sprache C++ auf dem Niveau eines Middle-Entwicklers und darüber hinaus erforderlich sind. Der Stoff wird unter Berücksichtigung der modernen Standards C++17 und C++20 vermittelt, was das Buch für die professionelle Entwicklung relevant macht.
Worum geht es in diesem Buch
Sie werden nacheinander grundlegende und fortgeschrittene Datenstrukturen erlernen:
- Lineare Strukturen: dynamische Arrays (std::vector), verkettete Listen (einfach verkettet, doppelt verkettet), Stapel und Warteschlangen, einschließlich std::queue und std::stack.
- Bäume und Graphen: binäre Suchbäume, AVL-Bäume, Rot-Schwarz-Bäume, Traversierungen (BFS, DFS), Algorithmen von Dijkstra, Bellman-Ford, Floyd-Warshall.
- Hash-Tabellen: Implementierung, Kollisionsauflösung, std::unordered_map und std::unordered_set.
- Sortier- und Suchalgorithmen: Quicksort, Mergesort, Heapsort, binäre Suche, Interpolationssuche.
- Dynamische Programmierung: Rucksackproblem, längste gemeinsame Teilfolge, Levenshtein-Distanz.
- Moderne C++-Funktionen: intelligente Zeiger, Move-Semantik, Lambda-Ausdrücke, Coroutinen, Ranges.
Für wen ist dieses Buch geeignet
- Anfängliche C++-Entwickler, die ihr Wissen über Algorithmen systematisieren möchten.
- Studenten technischer Fachrichtungen, die sich auf Vorstellungsgespräche oder Programmierwettbewerbe vorbereiten.
- Praktizierende Programmierer, die fortgeschrittene Techniken zur Code-Optimierung und Speicherverwaltung erlernen möchten.
Was Sie lernen werden
- Wie Sie die optimale Datenstruktur für eine bestimmte Aufgabe auswählen (Big-O-Notation, amortisierte Analyse).
- Wie Sie eigene Container von Grund auf implementieren und die STL richtig nutzen.
- Wie Sie effizienten, sicheren und lesbaren Code unter Berücksichtigung der Besonderheiten von C++ schreiben (RAII, Ausnahmen, Templates).
- Wie Sie typische Aufgaben in Vorstellungsgesprächen lösen: vom Umkehren einer Liste bis zur Suche des kürzesten Weges in einem Graphen.
Jedes Kapitel enthält Codebeispiele, die sofort ausgeführt werden können, sowie praktische Aufgaben mit Lösungsanalysen. Das Buch wird ein zuverlässiger Begleiter sowohl für das Selbststudium als auch für die Vorbereitung auf technische Interviews sein.
Empfehlungen
Geheimnisse von Python Pro
Sauberer Code in TypeScript: Ein praktischer Leitfaden zum Schreiben von wartbarem und effizientem Code
DevOps für C++-Entwickler: CI/CD, Containerisierung und Infrastruktur
Serious Python. Entwicklung, Deployment, Support
API-Entwicklung in Java: von den Grundlagen bis zu Microservices
TypeScript und AWS