- •5.3 Задачи к главе 5 56
- •6.4 Задачи к главе 6 67
- •7.5 Задачи к главе 7 85
- •1 Элементы теории множеств и отношений
- •1.1 Условные обозначения, принятые в тексте
- •1.2 Множества. Способы задания множеств
- •1.3 Операции над множествами
- •1.4 Действия с цепочками
- •1.5 Число элементов множества
- •Решение
- •1.6 Отношения
- •Решение
- •1.7 Свойства бинарных отношений
- •1.8 Операции с бинарными отношениями
- •1.9 Упражнения и задачи к главе 1
- •2 Элементы алгебры логики
- •2.1 Простые высказывания; логические связки
- •2.2 Составные высказывания. Таблицы истинности
- •2.3 Логические законы
- •2.4 Построение заданных составных высказываний
- •2.5 Отношения между высказываниями
- •2.6 Аргументы
- •2.7 Задачи на построение таблиц истинности
- •3 Элементы теории графов
- •3.1 Общие понятия и определения
- •3.2 Способы задания графов
- •3.3 Элементы графов
- •3.4 Операции с частями графа
- •3.5 Диаметр, радиус и центр графа
- •3.6 Диаметр протяженности, радиус протяженности и центр протяженности графа
- •3.7 Задачи к главе 3
- •4 Теория конечных автоматов
- •4.1 Конечные автоматы – распознаватели
- •4.2 Эквивалентные состояния ка
- •4.3 Недостижимые состояния ка
- •4.4 Недетерминированный конечный автомат
- •4.5 Задачи к главе 4
- •5 Автоматы с магазинной памятью
- •5.1 Автоматы-распознаватели с магазинной памятью
- •5.2 Автоматы–трансляторы с магазинной памятью
- •Параметры мп-транслятора:
- •5.3 Задачи к главе 5
- •6 Грамматики
- •6.1 Общие сведения
- •6.2 Классификация грамматик
- •6.3 Эквивалентные преобразования грамматик
- •6.3 1 Удаление или добавление бесполезных (непродуктивных и недостижимых) нетерминалов
- •Решение
- •6.3.2 Добавление нетерминала
- •6.3.3 Подстановка правил
- •6.3.4 Изменение направления рекурсии
- •6.4 Задачи к главе 6
- •7 Распознаватели для грамматик
- •7.1 Построение ка–распознавателей для автоматных
- •Решение
- •7.2 Построение ка–распознавателей для праволинейных грамматик
- •7.3 Построение мп–распознавателей для s – грамматик
- •7.4 Построение мп–распознавателей для q – грамматик
- •7.5 Задачи к главе 7
3.3 Элементы графов
Граф без кратных ребер называют полным, если каждая пара вершин соединена ребром.
Граф H называют частью графа G, если множество вершин графа H принадлежит множеству вершин графа G и множество рёбер графа H принадлежит множеству рёбер графа G, т.е.:
V(H) V(G); E(H) E(G).
Часть графа H называется суграфом, если она содержит все вершины графа G.
Суграф H для неориентированного графа G называется покрывающим суграфом, если любая вершина последнего инцидентна хотя бы одному ребру из H.
Подграф G(U) графа G на множестве вершин U ( U V ) – это часть графа, которой принадлежат все ребра с обоими концами из U.
Звёздный граф для вершины v (v G) состоит из всех рёбер с началом и концом в вершине v. Множество вершин звёздного графа состоит из вершины v и других смежных с ней вершин.
3.4 Операции с частями графа
1 Дополнение
Если задан граф G и его часть H , то дополнение части H
содержит ту часть ребер графа G (и инцидентных им вершин), которая не принадлежат H.
2 Объединение
H1 H2 = H;
V(H) = V(H1) V(H2), E(H) = E(H1) E(H2),
где V(H), V(H1), V(H2), – множества вершин соответствующих графов;
E(H), E(H1), E(H2), – множества рёбер этих же графов.
__
H H = G (объединение части графа и его дополнения).
3 Пересечение
H1 H2 = H;
V(H) = V(H1) V(H2), E(H) = E(H1) E(H2) (если H1 и H2 не имеют общих вершин, то эта операция не определена).
Маршрутом в единичном связном графе G называется такая конечная последовательность ребер (e1,e2….en), в которой каждые два соседних ребра имеют общую инцидентную вершину.
Вершина vо, инцидентная ребру e1 и не инцидентная ребру e2, называется началом маршрута в графе G.
Вершина vn, инцидентная ребру en и не инцидентная ребру en-1, называется концом маршрута.
Число ребер маршрута называется его длиной.
Если вершины vо и vn совпадают, то маршрут называется циклическим (или просто циклом).
Отрезок конечного или бесконечного маршрута сам является маршрутом.
Маршрут в графе G называется цепью, если все ребра в последовательности различны, и простой цепью, если все вершины, через которые проходит маршрут (а значит и ребра) различны.
Другими словами, в цепи ребро может встретиться не более одного раза, а в простой цепи вершина – не более одного раза.
Говорят, что две вершины в графе связаны, если существует соединяющая их цепь. Граф, в котором все вершины связаны, называется связным.
Расстоянием между двумя вершинами графа называется минимальная длина простой цепи, связывающей эти вершины (обозначение d(v,v)).
Протяженностью между двумя вершинами графа называется максимальная длина простой цепи, связывающей эти вершины (обозначение g(v,v)).
В частном случае расстояние и протяженность между вершинами могут быть одинаковыми.
3.5 Диаметр, радиус и центр графа
Рассмотрим единичный связный неориентированный граф G.
Минимальная длина простой цепи с началом в v, и концом в vназывается расстоянием между этими вершинами.
Диаметр графа – максимальное из расстояний между любыми парами вершин графа: D(G) = max d(v,v).
v',v" G
Если принять за точку отсчёта расстояний одну из вершин графа G (например vi ),то максимальное из расстояний от vi до любой из вершин графа G называется удалением от этой вершины:
r(vi) = max d(vj).
vj G
Вершина vi называется центром графа, если удаление от неё принимает минимальное значение(таких вершин в графе может быть несколько). Удаление от центра называется радиусом графа:
r(G) = min r(vi).
vi G
Любая простая цепь связывающая центр с максимально удаленной от него вершиной называется радиальной цепью.
Рассмотрим на примере определение этих параметров графа (анализ графа на минимум).
Пример: Задан единичный неориентированный граф G:
V = {a, b, c, d, e, f}; E = {ab, ac, bc, cd, ce, de, ef}.
Определить диаметр, центр (центры) и радиус этого графа.
Решение
Для определения этих параметров изобразим граф и составим матрицу расстояний: (на пересечении столбца и строки (вершины графа) матрицы указывается расстояние между этими вершинами; такая матрица (выделена на рисунке) симметрична относительно главной диагонали).
В столбце с заголовком r(vi) укажем удаления от соответствующих вершин (максимальное значение расстояния каждой строки).
Вершины |
a |
b |
c |
d |
e |
f |
r(vi) |
Центр |
a |
0 |
1 |
1 |
2 |
2 |
3 |
3 |
Нет |
b |
1 |
0 |
1 |
2 |
2 |
3 |
3 |
Нет |
c |
1 |
1 |
|
1 |
1 |
2 |
2 |
Да |
d |
2 |
2 |
1 |
0 |
1 |
2 |
2 |
Да |
e |
2 |
2 |
1 |
1 |
0 |
1 |
2 |
Да |
f |
3 |
3 |
2 |
2 |
1 |
0 |
3 |
Нет |
Максимальное из удалений и будет диаметром графа (т.е. максимально возможным расстоянием между вершинами в исследуемом графе): D(G)= 3.
Вершины, для которых удаление r(vi) принимает минимальное значение (помечены в последнем столбце «Да» ), являются центрами графа G, а значение удаления – радиусом графа:
r(G) = 2.
Если ребра графа нагружены (каждому ребру поставлено в соответствие определенное числовое значение), то процедура исследования аналогична описанной выше, но при заполнении матрицы нужно определять расстояние между вершинами не по числу ребер, а по суммарной их длине.
