Шпоры по дискретной математике2
Число компонент связности графа G обозначим c(G). Граф G является связным тогда и только тогда, когда c(G)=1. Если c(G)>1, то G — несвязный граф. Граф, состоящий только из изолированных вершин, называется вполне несвязным.
19. Сильная связность. Две вершины u, v в орграфе G связаны отношением двусторонней достижимости, если существует маршрут из u в v, и из v в u. Орграф, в котором любые две вершины двусторонне достижимы, называется сильно связным. Тривиальный граф, состоящий из изолированной вершины, по определению считается сильно связным.
Отношение двусторонней достижимости вершин является отношением эквивалентности. Компонентой сильной связности орграфа G называется его сильно связный подграф, который не является собственным подграфом никакого другого сильно связного подграфа орграфа G. Классы эквивалентности по отношению двусторонней достижимости, являются разбиением множества вершин орграфа G на подмножества вершин, входящих в одну компоненту сильной связности. Для построения компоненты сильной связности достаточно взять один класс эквивалентности и перенести на множество его вершин связи (дуги) из орграфа G. Число компонент сильной связности орграфа G обозначим k(G). Орграф G является сильно связным тогда и только тогда, когда k(G)=1. Если k(G)>1, то G — не является сильно связным орграфом.
Односторонняя связность. Орграф G называется односторонне связанным, если для любых вершин u, v существует маршрут хотя бы в одну сторону.
Если орграф является сильно связным, то он будет и односторонне связным.
Слабая связность. Псевдографом ассоциированным с орграфом G=(V,E) называется псевдограф G1=(V1,E1), в котором E1 получается из E заменой всех дуг (упорядоченных пар) на ребра (неупорядоченные пары).
Орграф G=(V,E) называется слабо связным, если ассоциированный с ним неориентированный граф является связным.
20. Пусть G=(V,E) граф (орграф) с n вершинами и q ребрами. Если A=A(G) — матрица смежности графа (орграфа) G, то aij элемент матрицы Аk есть число маршрутов из vi в vj длины k. В n вершинном графе (орграфе) G тогда и только тогда существует маршрут из vi в vj (i∫j), когда (i,j)-й элемент матрицы не равен нулю.
В n вершинном графе (орграфе) G тогда и только тогда существует цикл; содержащий вершину ai, когда (i,i)-й элемент матрицы не равен нулю. Образуем из матрицы B матрицу C=(cij) порядка n по следующему правилу: Cij=1, если bij≠0; Cij=0, если bij=0, где bij элементы матрицы B.
Матрица C называется матрицей связности, если G -неориентированный граф, и матрицей достижимости, если G — орграф. В графе G существует маршрут из vi в vj когда cij=1. В матрице C содержится информация о существовании связей между различными элементами графа посредством маршрутов. Если G — связный неориентированный граф, то все элементы матрицы связности C равны единице. В общем случае матрица связности неориентированного графа является матрицей отношения эквивалентности, соответствующего разбиению множества вершин графа на компоненты связности.
Выход: последовательность вершин обхода.
for vсV do x[v]:=0
Источник
4.11.5. Упорядоченные и бинарные деревья
2) если T1, T2. Тп непустые упорядоченные деревья, a некоторый новый элемент, то список Т = (a, T1, T2, . Тn) образует упорядоченное дерево. При этом элемент а называемся корнем упорядоченного дерева Т;
3) любое упорядоченное дерево строится в соответствии с п.п. 1 и 2.
Если T1, T2, . Тn упорядоченные деревья, то список (T1, T2, . Тn) называется упорядоченным лесом.
Для заданного упорядоченного дерева Т определим множество S(Т) его упорядоченных поддеревьев:
если Т = , то S(T) = ;
если Т = (а), то S(T) = <(a)>;
если Т=(a, T1, T2, . Тn), то S(T)=S(T1). S(Tn).
Непустое упорядоченное дерево Т может интерпретироваться в виде системы пронумерованных непустых множеств, каждое из которых взаимно однозначно соответствует упорядоченному поддереву из S(Т) так, что:
1) если Т’ поддерево упорядоченного дерева Т», Т’,Т»S(T), то для соответствующих множеств X‘ и X« выполняется включение X‘ X«;
2) если Т’ не является поддеревом упорядоченного дерева Т«, Т’,Т»S(T), то соответствующие множества не пересекаются.
Пример. Упорядоченному дереву
соответствует система множеств, изображенная на рис. 4.38.
Упорядоченное дерево может также интерпретироваться в виде так называемого уступчатого списка, который используется в оглавлениях. На рис. 4.39 представлен уступчатый список, соответствующий упорядоченному списку из примера.
Согласно следующему тезису любая схема, в которой заданы определенные приоритеты между элементами, может рассматриваться как некоторое упорядоченное дерево.
Тезис. Любая иерархическая классификационная схема интерпретируется некоторым упорядоченным деревом.
Например, и виде упорядоченного дерева представляется любой терм. На рис. 4.40 изображено упорядоченное дерево, соответствующее терму t=a—b(c:d+e:f).
Частным случаем упорядоченного дерева является бинарное дерево. Определение понятия бинарного дерева повторяет определение для упорядоченного дерева с ограничением п в п.2. При этом для бинарного дерева Т = ((a),T1,T2), бинарное поддерево T1 называется левым поддеревом, а T2 – правым поддеревом.
Бинарные деревья имеют более простое устройство, чем упорядоченные, и вместе с тем любой упорядоченный лес взаимно однозначно соответствует некоторому бинарному дереву.
Опишем алгоритм преобразования упорядоченною леса Т = (T1, T2, . Tn) в бинарное дерево В (Т).
Шаг 1. Если n = 0, В(Т) = .
Шаг 2. Если п > 0, то корнем бинарного дерева В(Т) является корень упорядоченного дерева Т1, левое поддерево дерева В(Т) — бинарное дерево В(Т11, Т12, …, Т1m), где Т1= ((a1),T11, T12, . T1m), правое поддерево дерева В(Т) — бинарное дерево В(Т2, . Тn).
Источник
Тема 3.7 Деревья
Определение: Деревом называется связный, ориентированный граф без петель и кратных ребер, не содержащий в себе циклов, удовлетворяющий следующим условиям:
- имеется в точности один узел, называемый корнем, в который не входит ни одно ребро,
- В каждый узел, кроме корня, входит ровно одно ребро,
- Из корня к каждому узлу идет путь ( который, как легко показать единственный).
Деревья являются простейшим видом связных графов. Любое дерево с n вершинами содержит n-1 ребер. Число различных деревьев, которые можно построить на n вершинах равно
- Каждый сын произвольного узла идентифицируется либо как левый сын, либо как правый сын.
- Каждый узел имеет не более одного левого и не более одного правого сына.
Обратите внимание, что бинарное дерево не является частным случаем дерева, это совершенно иное, хотя и тесно связанное понятие. Н
Прохождение дерева т в прямом порядке определяется следующим алгоритмом:
- Посетить корень r
- Посетить слева на право поддеревья с корнями v1 . . . vk в указанной последовательности.
П
- Числовые характеристики графа
1.5. Понятие обхода графа 1.5.1. Эйлеров цикл 1.5.2. Гамильтонов цикл
- Изоморфизм графов
- Понятие дерева
- Бинарные деревья
- Алгоритмы нумерации узлов графа
- Нумерация в прямом порядке
- Нумерация в обратном порядке
- Нумерация во внутреннем порядке
Подобная система нумерации часто называется десятичной системой обозначения Дьюи. В
- СЧЕТ СЧЕТ+1
4. if ПРАВЫЙСЫН[УЗЕЛ]0 then ВНУТРПОРЯДОК(ПРАВЫЙСЫН[УЗЕЛ]); End Такая процедура, которая явно или неявно вызывает сама себя, называется рекурсивной. Применение рекурсии часто дает возможность давать более прозрачное и сжатое описание алгоритма, чем это же можно было бы сделать, не используя рекурсию. Если бы приведенный алгоритм не был записан рекурсивно, надо было бы строить явный механизм для прохождения дерева. Двигаться вниз по дереву нетрудно, но чтобы обеспечить возможность вернуться к предку, надо запомнить всех предков в стеке, а операторы работы со стеком усложнили бы алгоритм, лишив его наглядности.
Источник