Оцените презентацию от 1 до 5 баллов!
Тип файла:
ppt / pptx (powerpoint)
Всего слайдов:
30 слайдов
Для класса:
1,2,3,4,5,6,7,8,9,10,11
Размер файла:
878.50 kB
Просмотров:
56
Скачиваний:
0
Автор:
неизвестен
Слайды и текст к этой презентации:
№1 слайд![Построение и анализ](/documents_5/d928c8e972a395319e1dea113b841f03/img0.jpg)
Содержание слайда: Построение и анализ алгоритмов
Раздел: Алгоритмы на графах
Лекция 10.2
Тема лекции:
Поиск в глубину в ориентированных графах
Топологическая сортировка
№2 слайд![Особенности поиска в глубину](/documents_5/d928c8e972a395319e1dea113b841f03/img1.jpg)
Содержание слайда: Особенности поиска в глубину (ПВГ) в ориентированных графах
№3 слайд![Пример ПВГ в орграфе](/documents_5/d928c8e972a395319e1dea113b841f03/img2.jpg)
Содержание слайда: Пример ПВГ в орграфе
№4 слайд![Пример ПВГ в орграфе](/documents_5/d928c8e972a395319e1dea113b841f03/img3.jpg)
Содержание слайда: Пример ПВГ в орграфе
№5 слайд![](/documents_5/d928c8e972a395319e1dea113b841f03/img4.jpg)
№6 слайд![](/documents_5/d928c8e972a395319e1dea113b841f03/img5.jpg)
№7 слайд![Топологическая сортировка](/documents_5/d928c8e972a395319e1dea113b841f03/img6.jpg)
Содержание слайда: Топологическая сортировка
№8 слайд![Пример](/documents_5/d928c8e972a395319e1dea113b841f03/img7.jpg)
Содержание слайда: Пример 0
№9 слайд![Продолжение примера ПВГ](/documents_5/d928c8e972a395319e1dea113b841f03/img8.jpg)
Содержание слайда: Продолжение примера 0 (ПВГ)
№10 слайд![Продолжение примера ПВГ](/documents_5/d928c8e972a395319e1dea113b841f03/img9.jpg)
Содержание слайда: Продолжение примера 0 (ПВГ)
№11 слайд![Продолжение примера ПВГ](/documents_5/d928c8e972a395319e1dea113b841f03/img10.jpg)
Содержание слайда: Продолжение примера 0 (ПВГ)
1) Получение sn [*] из fn [*]:
for (i=1; i<=n; i++) sn [i] = n - fn [i] + 1;
2) Получение tn [*] из sn [*]:
for (i=1; i<=n; i++) tn[sn[i]] = i;
------------------------------------------
Или получение tn [*] сразу из fn [*]:
for (i=1; i<=n; i++) tn[n - fn[i] + 1] = i ;
№12 слайд![Перестановки](/documents_5/d928c8e972a395319e1dea113b841f03/img11.jpg)
Содержание слайда: Перестановки
№13 слайд![Выполнить ПВГ в орграфе G,](/documents_5/d928c8e972a395319e1dea113b841f03/img12.jpg)
Содержание слайда: Выполнить ПВГ в орграфе G, заполнив массив fn[*].
Выполнить ПВГ в орграфе G, заполнив массив fn[*].
Пронумеровать вершины номерами (n - fn[v] + 1), т.е. заполнить sn [*] – вектор (последовательность) новых номеров в порядке топологической сортировки (sn [ i ] – новый номер вершины с исходным номером i).
Перегруппировать вершины, т.е. заполнить tn [*] – вектор старых номеров в новом порядке (tn [ i ] – исходный номер вершины с номером i в порядке топологической сортировки)
№14 слайд![Алгоритм топологической](/documents_5/d928c8e972a395319e1dea113b841f03/img13.jpg)
Содержание слайда: Алгоритм топологической сортировки
Пример 1
№15 слайд![Алгоритм топологической](/documents_5/d928c8e972a395319e1dea113b841f03/img14.jpg)
Содержание слайда: Алгоритм топологической сортировки
Пример 2 (другие списки смежности)
№16 слайд![Продолжение на следующей](/documents_5/d928c8e972a395319e1dea113b841f03/img15.jpg)
Содержание слайда: Продолжение
на следующей лекции!
(28 апреля)
№17 слайд![Нахождение сильно связных](/documents_5/d928c8e972a395319e1dea113b841f03/img16.jpg)
Содержание слайда: Нахождение сильно связных компонент графа (ССК)
Алгоритм на основе поиска в глубину
Сильная связность (Strongly Connection)
Определение. Орграф G сильносвязный, если любые две его вершины достижимы друг из друга.
№18 слайд![Сильно связные компоненты](/documents_5/d928c8e972a395319e1dea113b841f03/img17.jpg)
Содержание слайда: Сильно связные компоненты
(Strongly Connected Components)
Сильно связная компонента – максимальный сильно связный подграф
№19 слайд![](/documents_5/d928c8e972a395319e1dea113b841f03/img18.jpg)
№20 слайд![Соответствие ССК дерево](/documents_5/d928c8e972a395319e1dea113b841f03/img19.jpg)
Содержание слайда: Соответствие «ССК – дерево»
Утверждение
Пусть Gi =(Vi, Ei) – ССК орграфа G, а F =(V, T) - глубинный остовный лес для G. Тогда узлы Vi орграфа G вместе с ребрами из Ei T образуют дерево.
Т.о. «ССК дерево», но «дерево ССК» - не верно (см.пример)
Хорошо бы при ПВГ обнаруживать корни деревьев, соответствующих ССК (!)
Алгоритм Тарьяна (Tarjan R.E.) аналогичен ранее рассмотренному алгоритму нахождение двусвязных компонент.
Мы рассмотрим далее другой алгоритм.
№21 слайд![При стягивании каждой сильно](/documents_5/d928c8e972a395319e1dea113b841f03/img20.jpg)
Содержание слайда: При стягивании каждой сильно связной компоненты в одну вершину получается ациклический ориентированный граф.
№22 слайд![Обращение орграфа понадобится](/documents_5/d928c8e972a395319e1dea113b841f03/img21.jpg)
Содержание слайда: Обращение орграфа (понадобится далее),
ССК – те же (!)
№23 слайд![Алгоритм Косарайю](/documents_5/d928c8e972a395319e1dea113b841f03/img22.jpg)
Содержание слайда: Алгоритм Косарайю (S.R.Kosaraju)
нахождения ССК орграфа
(на основе двух ПВГ)
Выполнить ПВГ орграфа G и вычислить номера вершин в порядке их использования fn[*].
Сконструировать новый (обращенный) орграф GR , путем обращения всех дуг исходного графа.
Выполнить ПВГ орграфа GR , начиная с вершины, имеющей наибольший номер fn[ ]. Если ПВГ не завершен, то продолжить, начиная с вершины, имеющей наибольший номер fn[ ] среди оставшихся.
Каждое дерево полученного глубинного остовного дерева орграфа GR является ССК орграфа G.
№24 слайд![](/documents_5/d928c8e972a395319e1dea113b841f03/img23.jpg)
№25 слайд![](/documents_5/d928c8e972a395319e1dea113b841f03/img24.jpg)
№26 слайд![Основные факты утверждения ,](/documents_5/d928c8e972a395319e1dea113b841f03/img25.jpg)
Содержание слайда: Основные факты (утверждения),
на которые опирается доказательство правильности алгоритма
Граф ССК GССК орграфа G – ациклический
ССК орграфов G и GR совпадают (как множества вершин)
При втором ПВГ граф ССК (GR)ССК орграфа GR проходится в порядке, обратном топологической сортировке
№27 слайд![Пример пояснение к](/documents_5/d928c8e972a395319e1dea113b841f03/img26.jpg)
Содержание слайда: Пример (пояснение к утверждениям)
№28 слайд![Пример продолжение](/documents_5/d928c8e972a395319e1dea113b841f03/img27.jpg)
Содержание слайда: Пример (продолжение)
№29 слайд![Сложность алгоритмов](/documents_5/d928c8e972a395319e1dea113b841f03/img28.jpg)
Содержание слайда: Сложность алгоритмов нахождения ССК
Алгоритм Тарьяна (Tarjan R.E.)
Алгоритм Косарайю (S.R.Kosaraju)
O(n + m)
КОНЕЦ ССК
№30 слайд![КОНЕЦ ЛЕКЦИИ КОНЕЦ ЛЕКЦИИ](/documents_5/d928c8e972a395319e1dea113b841f03/img29.jpg)
Содержание слайда: КОНЕЦ ЛЕКЦИИ
КОНЕЦ ЛЕКЦИИ