- •1.Множество. Способы описания множеств. Примеры. Пустое множество. Универсальное множество. Подмножество. Собственное подмножество. Равенство множеств.
- •2.Операции над множествами: объединение, пересечение, разность, симметрическая разность. Дополнение множества. Примеры.
- •3.Свойства операций над множествами.
- •4. Диаграммы Эйлера – Венна.
- •5. Булеан множества. Примеры. Мощность булеана конечного множества.
- •6. Прямое (декартово) произведение. Примеры. Число элементов в декартовом произведении п множеств.
- •7. Бинарное отношение на множестве. Примеры
- •8.Свойства бинарных отношений: рефлексивность, антирефлексивность, симметричность, антисимметричность, транзитивность. Примеры
- •9.Отношение эквивалентности. Классы эквивалентности. Примеры.
- •10. Отношение порядка: строгого и нестрогого. Примеры. Полное отношение.
- •11. Отображение (функция). Примеры. Постоянная функция. Тождественная функция. Образ и прообраз множества
- •13. Операции над отображениями. Суперпозиция отображений, ее свойства. Примеры. Обратное отображение. Примеры. Критерий обратимости отображения. Свойства операции.
- •16. Изоморфизм графов. Примеры.
- •17. Представление графа. Матрицы смежности и инцидентности ориентированного и неориентированного графов. Примеры. Смысл элемента п-й степени матрицы смежности.
- •18. Полный граф. Пустой граф. Дополнение графа. Двудольный граф. Полный двудольный граф. Планарный граф. Однородный граф. Подграф. Частичный граф. Примеры.
- •19. Маршрут в графе. Цепь. Простая цепь. Циклический маршрут. Цикл. Простой цикл. Путь и контур в орграфе. Примеры.
- •20. Достижимость в неориентированном графе. Матрица достижимости, ее нахождение. Компоненты связности графа, их нахождение.
- •21. Достижимость и взаимная достижимость в ориентированном графе. Матрицы достижимости и сильной связности, их нахождение. Компоненты сильной связёности, их нахождение.
- •22.Нахождение кратчайшего пути между двумя вершинами в невзвешенном ориентированном графе. Волновой алгоритм.
- •23.Взвешенный граф. Нахождение кратчайшего пути между двумя заданными вершинами во взвешенном ориентированном графе. Алгоритм Дейкстры.
- •24.Нахождение кратчайшего пути между всеми парами вершин во взвешенном ориентированном графе. Алгоритм Флойда.
- •25 Центр и медиана взвешенного ориентированного графа. Их нахождение.
- •26. Лес. Дерево. Остовное дерево. Цикломатическое число графа. Нахождение минимального остовного дерева. Алгоритм Прима.
24.Нахождение кратчайшего пути между всеми парами вершин во взвешенном ориентированном графе. Алгоритм Флойда.
Ключевая идея алгоритма — разбиение процесса поиска кратчайших путей на фазы.
Перед k-ой фазой (k=1……n) считается, что в матрице расстояний d[][]сохранены длины таких кратчайших путей, которые содержат в качестве внутренних вершин только вершины из множества {1,2,…,k-1}(вершины графа мы нумеруем, начиная с единицы).
Иными словами, перед k-ой фазой величина d[i] [j]равна длине кратчайшего пути из вершины iв вершину j, если этому пути разрешается заходить только в вершины с номерами, меньшими k(начало и конец пути не считаются).
Легко убедиться, что чтобы это свойство выполнилось для первой фазы, достаточно в матрицу расстояний d[][] записать матрицу смежности графа: d[i][j]=g[i][j]— стоимости ребра из вершины I в вершину j. При этом, если между какими-то вершинами ребра нет, то записать следует величину "бесконечность" ∞. Из вершины в саму себя всегда следует записывать величину 0, это критично для алгоритма.
Пусть теперь мы находимся на k-ой фазе, и хотим пересчитать матрицу d[][] таким образом, чтобы она соответствовала требованиям уже для k+1-ой фазы. Зафиксируем какие-то вершины i и j. У нас возникает два принципиально разных случая:
Кратчайший путь из вершины i в вершину j, которому разрешено дополнительно проходить через вершины {1,2,…,k}, совпадает с кратчайшим путём, которому разрешено проходить через вершины множества {1,2,…,k-1}.
В этом случае величина d[i][j] не изменится при переходе с k-ой на k+1-ую фазу.
"Новый" кратчайший путь стал лучше "старого" пути.
Это означает, что "новый" кратчайший путь проходит через вершину k. Сразу отметим, что мы не потеряем общности, рассматривая далее только простые пути (т.е. пути, не проходящие по какой-то вершине дважды).
Тогда заметим, что если мы разобьём этот "новый" путь вершиной k на две половинки (одна идущая i=>k, а другая — k=>j), то каждая из этих половинок уже не заходит в вершину k. Но тогда получается, что длина каждой из этих половинок была посчитана ещё на k-1-ой фазе или ещё раньше, и нам достаточно взять просто сумму d[i][k]+d[k][j] , она и даст длину "нового" кратчайшего пути.
Объединяя эти два случая, получаем, что на k-ой фазе требуется пересчитать длины кратчайших путей между всеми парами вершин iи jследующим образом:
new_d[i][j] = min (d[i][j], d[i][k] + d[k][j]);
Таким образом, вся работа, которую требуется произвести на k-ой фазе — это перебрать все пары вершин и пересчитать длину кратчайшего пути между ними. В результате после выполнения n-ой фазы в матрице расстояний d[i][j] будет записана длина кратчайшего пути между i и j, либо ∞, если пути между этими вершинами не существует.
25 Центр и медиана взвешенного ориентированного графа. Их нахождение.
Центром графа назовем вершину, расстояние от которой до наиболее удаленной от нее вершины минимально. Нахождение центра .Пусть А-матрица графа. Сначала найдем матрицу кратчайших путей, содержащей все кратчайшие пути графа G. Затем находим максимальное значение в каждом столбце i матрицы А. Это значение равно эксцентриситету вершины i. И, наконец, находим вершину с минимальным эксцентриситетом. Она и будет центром графа G. У графа может быть несколько центров вершин.
Медиана графа – такая вершина x, суммарное расстояние от которой до всех остальных вершин графа минимально.Cуммарное расстояние от вершины до всех остальных вершин - СВВ(i) определяется соотношением СВВ(i)= Σdi,j - суммарное расстояние от вершины i до всех j.
СВВ(x)=min {СВВ(i)} Заметим, что сумма значений элементов i-й строки матрицы DN расстояний вершина-вершина равна сумме расстояний от вершины ко всем остальным вершинам графа, т. е. равна СВВ(i). Следовательно, медиана соответствует любой строке матрицы DN, для которой сумма значений элементов минимальна. Элементы матрицы DN могут быть расчитаны с помощью алгоритма Флойда или Данцига. Представим теперь алгоритм поиска медианы.
Алгоритм поиска медианы.
находим D0 – матрица, элементами которой являются ai,j – длины кратчайших дуг;
Ищем DN – матрицу длин кратчайших путей между всеми вершинами графа по Флойду или Данцигу;
Определяем СВВ(i);
Из всех СВВ(i) выбираем наименьшее, соответствующая вершина и будет медианой;