1: Алгоритм Флойда-Уоршалла Находит кратчайшие расстояния между всеми парами вершин графа Идея: Строится специальная матрица D, элементы которой – кратчайшие пути между всевозможными парами вершин графа G. При определении кратчайшего пути выбирается минимум из «прямого» расстояния между смежными вершинами vi и vj и суммарного расстояния при проходе через дополнительную вершину. Затем – более длинные пути и т. д.
2: Обозначим через длину кратчайшего Обозначим через длину кратчайшего пути из vi в vj с промежуточными вершинами во множестве v1,…,vm. Алгоритм использует три правила: 1) - вес дуги, соединяющей вершины vi и vj (т. е. первоначально матрица D – это исходная матрица весов).
3: 2) 2) 3) Длина кратчайшего пути из вершины vi в вершину vj: Алгоритм строит матрицу за n шагов, т. е. строится матрица D(1) , …, D(n) D.
4: Пример. Найдем матрицу кратчайших расстояний для графа.
5: v1 v2 v3 v1 v2 v3
6: Элементы матрицы D(1) находим по правилу: Элементы матрицы D(1) находим по правилу:
8: Элементы матрицы D(2) находим по правилу:
10: Элементы матрицы D(3) находим по правилу:
13: 3. 6. 7 Раскраска графов
15: 432248
16: Раскраской графа G называется Раскраской графа G называется окрашивание вершин графа G, такое, что никакие две смежные вершины не окрашены в один цвет. Пусть СG() обозначает количество способов раскраски графа G с использованием цветов, так, что никакие две соседние вершины не окрашены в разные цвета. Для фиксированного графа G это полиномиальная функция от .
17: Само при этом называется хроматическим числом. Само при этом называется хроматическим числом. Хроматическое число графа – это наименьшее положительное число n, такое что СG(n)0. Проблема четырёх красок эквивалентна утверждению, что СG(4)0 для произвольного графа.