Алгоритмические задачи
Общий поток: LeetCode + e-maxx. Данные хранятся в отдельных LiteDB.
E024. Поиск в ширину
e-maxx · algorithm · оригинал: C/C++
E026. Топологическая сортировка
e-maxx · algorithm · оригинал: C/C++
E027. Алгоритм поиска компонент связности в графе
e-maxx · algorithm · оригинал: C/C++
E028. Поиск компонент сильной связности, построение конденсации графа
e-maxx · algorithm · оригинал: C/C++
E029. Поиск мостов
e-maxx · algorithm · оригинал: C/C++
E030. Поиск точек сочленения
e-maxx · algorithm · оригинал: C/C++
E031. Поиск мостов в режиме онлайн
e-maxx · algorithm · оригинал: C/C++
E032. Нахождение кратчайших путей от заданной вершины до всех остальных вершин алгоритмом Дейкстры
e-maxx · algorithm · оригинал: C/C++
E033. Нахождение кратчайших путей от заданной вершины до всех остальных вершин алгоритмом Дейкстры для разреженных графов
e-maxx · algorithm · оригинал: C/C++
E034. Алгоритм Форда-Беллмана
e-maxx · algorithm · оригинал: C/C++
E035. Алгоритм Левита нахождения кратчайших путей от заданной вершины до всех остальных вершин
e-maxx · algorithm · оригинал: C/C++
E036. Алгоритм Флойда-Уоршелла нахождения кратчайших путей между всеми парами вершин
e-maxx · algorithm · оригинал: C/C++
E037. Кратчайшие пути фиксированной длины, количества путей фиксированной длины
e-maxx · algorithm · оригинал: C/C++
E038. Минимальное остовное дерево. Алгоритм Прима
e-maxx · algorithm · оригинал: C/C++
E039. Минимальное остовное дерево. Алгоритм Крускала
e-maxx · algorithm · оригинал: C/C++
E040. Минимальное остовное дерево. Алгоритм Крускала с системой непересекающихся множеств
e-maxx · algorithm · оригинал: C/C++
E041. Матричная теорема Кирхгофа. Нахождение количества остовных деревьев
e-maxx · algorithm · оригинал: C/C++
E042. Код Прюфера. Формула Кэли. Количество способов сделать граф связным
e-maxx · algorithm · оригинал: C/C++
E043. Нахождение отрицательного цикла в графе
e-maxx · algorithm · оригинал: C/C++
E044. Нахождение Эйлерова пути за O (M)
e-maxx · algorithm · оригинал: C/C++
E045. Проверка графа на ацикличность и нахождение цикла
e-maxx · algorithm · оригинал: C/C++
E046. Наименьший общий предок. Нахождение за O (sqrt (N)) и O (log N) с препроцессингом O (N)
e-maxx · algorithm · оригинал: C/C++
E047. Наименьший общий предок. Нахождение за O (log N) (метод двоичного подъёма)
e-maxx · algorithm · оригинал: C/C++
E048. Наименьший общий предок. Нахождение за O (1) с препроцессингом O (N) (алгоритм Фарах-Колтона и Бендера)
e-maxx · algorithm · оригинал: C/C++
E049. Задача RMQ (Range Minimum Query - минимум на отрезке). Решение за O (1) с препроцессингом O (N)
e-maxx · algorithm · оригинал: C/C++
E050. Наименьший общий предок. Нахождение за в оффлайн (алгоритм Тарьяна)
e-maxx · algorithm · оригинал: C/C++
E051. Максимальный поток методом Эдмондса-Карпа за O (N M2)
e-maxx · algorithm · оригинал: C/C++
E052. Максимальный поток методом Проталкивания предпотока за O (N4)
e-maxx · algorithm · оригинал: C/C++
E053. Модификация метода Проталкивания предпотока для нахождения максимального потока за O (N3)
e-maxx · algorithm · оригинал: C/C++
E054. Нахождение потока в графе, в котором у каждого ребра указано минимальное и максимальное значение потока
e-maxx · algorithm · оригинал: C/C++
E055. Поток минимальной стоимости (min-cost- flow). Алгоритм увеличивающих путей
e-maxx · algorithm · оригинал: C/C++
E056. Задача о назначениях. Решение с помощью min-cost-flow
e-maxx · algorithm · оригинал: C/C++
E057. Венгерский алгоритм решения задачи о назначениях
e-maxx · algorithm · оригинал: C/C++
E058. Нахождение минимального разреза. Алгоритм Штор-Вагнера
e-maxx · algorithm · оригинал: C/C++
E059. Поток минимальной стоимости, циркуляция минимальной стоимости. Алгоритм удаления циклов отрицательного веса
e-maxx · algorithm · оригинал: C/C++
E061. Алгоритм Куна нахождения наибольшего паросочетания в двудольном графе
e-maxx · algorithm · оригинал: C/C++
E062. Проверка графа на двудольность и разбиение на две доли
e-maxx · algorithm · оригинал: C/C++
E063. Нахождение наибольшего по весу вершинно-взвешенного паросочетания
e-maxx · algorithm · оригинал: C/C++
E064. Алгоритм Эдмондса нахождения наибольшего паросочетания в произвольных графах
e-maxx · algorithm · оригинал: C/C++
E065. Покрытие путями ориентированного ациклического графа
e-maxx · algorithm · оригинал: C/C++
E067. Рёберная связность. Свойства и нахождение
e-maxx · algorithm · оригинал: C/C++
E068. Рёберная связность. Свойства и нахождение
e-maxx · algorithm · оригинал: C/C++
E069. Построение графа с указанными величинами вершинной и рёберной связностей и наименьшей из степеней вершин
e-maxx · algorithm · оригинал: C/C++
E070. Обратная задача SSSP (inverse-SSSP - обратная задача кратчайших путей из одной вершины)
e-maxx · algorithm · оригинал: C/C++
E071. Обратная задача MST (inverse-MST - обратная задача минимального остова) за O (N M2)
e-maxx · algorithm · оригинал: C/C++
E075. Длина объединения отрезков на прямой за O (N log N)
e-maxx · algorithm · оригинал: C/C++
E076. Знаковая площадь треугольника и предикат "По часовой стрелке"
e-maxx · algorithm · оригинал: C/C++
E077. Проверка двух отрезков на пересечение
e-maxx · algorithm · оригинал: C/C++
E139. Игры на произвольных графах
e-maxx · algorithm · оригинал: C/C++
E140. Теория Шпрага-Гранди. Ним
e-maxx · algorithm · оригинал: C/C++