DEV//UNIT
01 / Раздел

АЛГОРИТМЫ

Не «прочитай определение», а «увидь, что он делает». Каждый алгоритм — интерактивная визуализация, пошаговый разбор и исходный код с подсветкой активной строки.

Graphs

A* (А-стар)

Дейкстра с эвристикой: f = g + h тянет к цели, не теряя корректности.

массивначальныйO(раскрытых клеток)

Алгоритм Краскала

MST: рёбра по возрастанию веса, создающие цикл — отбрасываем.

графначальныйO(E log E)

Алгоритм Прима

MST растёт из вершины: всегда самое дешёвое ребро из дерева наружу.

графначальныйO(E log V)

Беллман-Форд

Кратчайшие пути с отрицательными рёбрами: V−1 проход ослабления.

графначальныйO(V · E)

Двудольность графа

Можно ли разбить вершины на две доли без рёбер внутри доли — BFS-раскраской.

графначальныйO(V + E)

Заливка (Flood Fill)

Закрасить связную область: волна от точки, стены не перепрыгнуть.

массивначальныйO(клеток области)

Компоненты связности

Сколько в графе «островков» — обход с раскраской каждой компоненты.

графначальныйO(V + E)

Поиск в глубину (DFS)

Идём вглубь до дна каждой ветки, а стек помнит, куда вернуться.

графначальныйO(V + E)

Поиск в ширину (BFS)

Обходим граф волной: сначала всех соседей, потом соседей соседей — слой за слоем.

графначальныйO(V + E)

Топологическая сортировка

Порядок вершин, уважающий все направленные рёбра (алгоритм Кана).

графначальныйO(V + E)

Флойд-Уоршелл

Все кратчайшие пути сразу: матрица, пересчитываемая через k-ю вершину.

массивначальныйO(V³)