Компоненты связности
Перейти к навигации
Перейти к поиску
void dfs(vector<vector<int>> &graph, int v, vector<int> &visited, int component) {
visited[v] = component;
for (int to : graph[v])
if (!visited[to])
dfs(graph, to, visited, component);
}
int componentCount = 0;
for (int v = 0; v < graph.size(); v++)
if (!visited[v])
dfs(graph, v, visited, ++componentCount);
Ссылки на задачи
Ссылки
- e-maxx.ru — Поиск компонент связности
- neerc.ifmo.ru/wiki — Использование обхода в глубину для проверки связности
- brestprog — Поиск компонент связности
- algorithmica.org — Графы. Поиск в глубину
- informatics.mccme.ru — Курс «Алгоритмы на графах» — часть 2
- Калинин П. Поиск в глубину
- Лахно А. Поиск в глубину и его применение
- algs4.cs.princeton.edu/lectures — 4.1 Undirected Graphs
- VisuAlgo — Graph Traversal