Das Hopcroft-Karp-Algorithmus ist ein effizienter Algorithmus zur Berechnung eines maximalen Matchings in bipartiten Graphen. Ein bipartiter Graph besteht aus zwei Mengen von Knoten, wobei Kanten nur zwischen Knoten aus verschiedenen Mengen existieren. Der Algorithmus kombiniert zwei Hauptphasen: die Suche nach augmentierenden Pfaden und die Aktualisierung des Matchings. Durch eine geschickte Anwendung von Breadth-First Search (BFS) und Depth-First Search (DFS) gelingt es, die Anzahl der benötigten Iterationen erheblich zu reduzieren, wodurch die Laufzeit auf sinkt, wobei die Anzahl der Kanten und die Anzahl der Knoten im Graphen ist. Die Idee hinter dem Algorithmus ist, dass durch das Finden und Ausnutzen von augmentierenden Pfaden das Matching schrittweise vergrößert wird, bis kein weiterer augmentierender Pfad mehr gefunden werden kann.
Starte dein personalisiertes Lernelebnis mit acemate. Melde dich kostenlos an und finde Zusammenfassungen und Altklausuren für deine Universität.