Найти в Дзене
DenoiseLAB

Собес ML. Вопрос №5. Алгоритм Хопкрофта-Карпа.

Оглавление
Фото: ViyshMat
Фото: ViyshMat

🤔Вопрос:

Знаком ли вам алгоритм Хопкрофта-Карпа, если да, то для чего он нужен ?

😎Ответ:

Этот графовый алгоритм, принимающий на вход двудольный граф и возвращающий максимальное, по мощности паросочетании - произвольное множество ребер такое, что каждая вершина графа инцидентна не более чем одному ребру из этого множества. Время работы от O(|E|sqrt(|V|)) до O(|V|^2.5). Любое наибольшее паросочетание является максимальным. Обратное неверно.

Плюсы:

1/ Алгоритм находит максимальное множество кратчайших увеличивающих путей;

2/ Имеет наилучшую асимптотику в худшем случае из всех известных алгоритмов для разреженных графов;

Минусы:

1/ Время работы для случайного графа - линейное;

2/ Уступает по производительности BFS и DFS-стратегии по поиску увеличивающего пути;

💥Подписывайтесь на наш канал - поддержите нас, ставьте лайки!

🔥Если вы хотите нас поддержать можно сделать вклад в развитие нашей математической лаборатории: https://boosty.to/viyshmat

👉Мы на Profi.ru: https://profi.ru/profile/MironovVO8/

👉Мы на Repetitor.ru: https://v3.repetitors.info/repetitor/p/MironovVO8/

👉Мы на HabrFreelance: https://freelance.habr.com/freelancers/MLab

👉Мы на YouDo: https://youdo.com/u9455664

👉Наш канал по Кодингу: https://dzen.ru/denoiselab