Поиск в глубину (5 ноября 2015, Глеб)
- Кодим dfs
- Выделение мостов и компонент реберной двусвязности [code]
- Что нужно поменять в коде, чтобы получилась вершинная двусвязность и точки сочленения?
- Эйлеров цикл (в ориентированном графе, комментарий к неориентированному графу) [code]
- Задачи на dfs
- Найти путь из множества вершин A в множество вершин B (из какой то вершин a ∈ A в какую-то b ∈ B)
- Найти все вершины неориентированного графа, которые обязательно будут лежать на пути от a до b. O(V+E).
- Разбить все рёбра слабосвязного орграфа на минимальное число путей
- Дополнение графа до Эйлерова (минимизировать число рёбер)
- [homework] Дополнение графа до Эйлерова (минимизировать суммарный вес рёбер)
- У каждой вершины не более 3 врагов. Отножение "вражда" симметрично. Разбить на 2 доли так, чтобы с вершиной в долю попало не более 1 врага.
- 2-SAT. Каждой вершине неорграфа сопоставлены два возможных цвета. Покрасить вершины так, чтобы соседние вершины были покрашены в различные цвета.
- 3-List-Coloring: решения за 2nm, 1.5nm
- [не успеем] Дополнение графа до сильносвязного.