Tiefensuche
Tiefensuche, im Bereich der Graphentheorie üblicherweise als Depth-First Search (DFS) bezeichnet, ist ein Algorithmus zur Traversierung oder Durchsuchung von Graphen und Bäumen. Von einem Startknoten aus wird so weit wie möglich entlang eines Pfades fortgegangen, bevor neue Verzweigungen durchsucht werden. Im Gegensatz zur Breitensuche erkundet DFS die Tiefe der Struktur vor der Erkundung benachbarter Knoten.
Die Implementierung erfolgt typischerweise rekursiv oder mit einem expliziten Stack. Alle Knoten werden beim ersten Besuch
Die Laufzeit beträgt gewöhnlich O(V+E), wobei V die Anzahl der Knoten und E die Anzahl der Kanten
Varianten schließen die depth-limited search ein, die maximale Tiefe begrenzt, sowie iterative deepening, das Wiederholungsdurchläufe mit
Im Gegensatz zur Breitensuche, die Knoten Ebene für Ebene durchsucht und oft den kürzesten Weg in ungewichteten