Algorithmen und Datenstrukturen in C# (.NET)
Algorithmen und Datenstrukturen in C# (.NET)
Zusammenfassung:
Dieses Buch ist ein praktischer Leitfaden zu grundlegenden Algorithmen und Datenstrukturen, die in der Sprache C# im .NET-Ökosystem implementiert sind. Es richtet sich an Entwickler, die nicht nur funktionierenden Code schreiben, sondern auch verstehen möchten, wie man ihn maximal effizient, skalierbar und wartbar macht.
Im Gegensatz zu abstrakten akademischen Lehrbüchern wird das Material durch die Brille realer Aufgaben präsentiert, mit denen jeder .NET-Entwickler konfrontiert wird. Sie lernen nicht nur die Theorie, sondern sehen auch, wie bestimmte Algorithmen zur Verarbeitung großer Datenmengen, zum Aufbau hochlastiger Dienste, zur Arbeit mit Sammlungen und zur Optimierung von Abfragen eingesetzt werden.
Was Sie aus dem Buch lernen werden:
- Grundlegende und fortgeschrittene Datenstrukturen: von Arrays, Listen und Stapeln bis hin zu Bäumen (binär, AVL, Rot-Schwarz), Graphen, Hash-Tabellen und Heaps. Jede Struktur wird im Hinblick auf ihren internen Aufbau, die Operationen Hinzufügen/Löschen/Suchen und die Komplexitätsbewertung (Big O) betrachtet.
- Klassische Sortier- und Suchalgorithmen: Quicksort, Mergesort, binäre Suche, Tiefen- und Breitensuche (DFS/BFS) für Graphen. Sie lernen, den optimalen Algorithmus für eine bestimmte Aufgabe auszuwählen.
- Algorithmen auf Graphen: Suche nach kürzesten Wegen (Dijkstra, Bellman-Ford), minimaler Spannbaum (Kruskal, Prim), topologische Sortierung. Sie können Probleme der Routenplanung, Netzplanung und Abhängigkeitsanalyse modellieren und lösen.
- Dynamische Programmierung und Greedy-Algorithmen: Analyse klassischer Probleme (Rucksackproblem, Problem der längsten gemeinsamen Teilsequenz, Münzwechselproblem). Sie erlernen die Methodik der Zerlegung komplexer Probleme in Teilprobleme.
- Arbeit mit Speicher und Leistung in .NET: Besonderheiten der Garbage Collection, Einfluss von Datenstrukturen auf Allokationen, Verwendung von Span
und Memory für Zero-Allocation-Szenarien. Sie lernen, Ihren Code zu profilieren und zu optimieren.
Für wen dieses Buch gedacht ist:
- Junior- und Middle-.NET-Entwickler, die ihr Niveau verbessern und sich auf technische Vorstellungsgespräche bei Top-Unternehmen vorbereiten möchten.
- Backend-Entwickler, die mit hochlastigen Systemen und Microservices in C# arbeiten.
- Studenten und Absolventen technischer Fachrichtungen, die Programmierung auf der .NET-Plattform lernen.
- Entwickler, die von anderen Sprachen (Java, Python, C++) auf C# umsteigen und die Besonderheiten der Algorithmenimplementierung in .NET verstehen möchten.
Jedes Kapitel enthält nicht nur theoretische Erklärungen, sondern auch fertige Codebeispiele, praktische Übungen und Aufgaben zur eigenständigen Lösung. Am Ende des Buches werden Sie in der Lage sein, effiziente Lösungen sicher zu entwerfen, Code zu schreiben, der schnell läuft und minimale Ressourcen verbraucht, sowie die algorithmischen Abschnitte von Vorstellungsgesprächen erfolgreich zu bestehen.
Das Buch ist in einer einfachen und verständlichen Sprache mit Fokus auf die Praxis geschrieben. Alle Beispiele sind für die neuesten Versionen von .NET (einschließlich .NET 8/9) und C# 12+ aktuell.
Empfehlungen
GraphQL in Swift: Moderne APIs für iOS und macOS erstellen
Nebenläufigkeit in JavaScript (Node.js)
Sicherheit von Kotlin-Anwendungen: Von den Grundlagen bis zu fortgeschrittenen Techniken
Go (Golang) für Anfänger: Der vollständige Kurs
PHP und Datenbanken: Ein praktischer Leitfaden
Kotlin für Android-Entwickler