ݺߣ

ݺߣShare a Scribd company logo
Визуализация
графов
Computer Science клуб, март 2014
Александр Дайняк, ФИВТ МФТИ
www.dainiak.com
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
DFS-дерево и обратные рѐбра
При поиске в глубину рёбра графа разбиваются
на два типа:
• рёбра DFS-дерева (в «новые» вершины),
• обратные рёбра (в пройденные вершины).
Фундаментальные циклы
Каждое обратное ребро вместе с путём по DFS-дереву образует
фундаментальный цикл.
Фундаментальные циклы
Каждое обратное ребро вместе с путём по DFS-дереву образует
фундаментальный цикл.
Фундаментальные циклы
Любая пара фундаментальных циклов либо не имеют общих
рёбер, либо их пересечение — путь в DFS-дереве.
(Иначе противоречие с отсутствием циклов в дереве.)
Фундаментальные циклы
Если DFS произвести в плоском графе, то каждый
фундаментальный цикл будет сориентирован
• по часовой стрелке («вправо»)
Фундаментальные циклы
Если DFS произвести в плоском графе, то каждый
фундаментальный цикл будет сориентирован
• по часовой стрелке («вправо»)
• либо против часовой стрелки («влево»)
Фундаментальные циклы и стороны
рѐбер
Точки возврата и нижние точки
Точки возврата и нижние точки
Развилки фундаментальных циклов
Развилка двух циклов, пересекающихся по
рёбрам, — это тройка рёбер
• последнее общее ребро,
• и следующие за ним два ребра, относящиеся
к различным циклам.
Фундаментальные циклы в укладке
планарного графа
• Два цикла, имеющие общие рёбра,
ориентированы одинаково т. и т.т.,
когда один цикл лежит внутри другого.
Фундаментальные циклы в укладке
планарного графа
• Два цикла, имеющие общие рёбра,
ориентированы одинаково т. и т.т.,
когда один цикл лежит внутри другого.
Фундаментальные циклы в укладке
планарного графа
• Два цикла, имеющие общие рёбра,
ориентированы одинаково т. и т.т.,
когда один цикл лежит внутри другого.
• Если циклы вложены друг в друга, то порядок
вложения зависит от порядка, в котором на
дереве расположены нижние точки обратных
рёбер.
Основное свойство сторон рѐбер
в планарном графе
Основное свойство сторон рѐбер
в планарном графе
ЛП-разбиение
ЛП-разбиение
Приведѐнное ЛП-разбиение
Приведѐнное ЛП-разбиение
Приведѐнное ЛП-разбиение
Приведѐнное ЛП-разбиение
Приведѐнное ЛП-разбиение
Приведѐнное ЛП-разбиение
Приведѐнное ЛП-разбиение
Продолжение ЛП-разбиения на рѐбра
дерева
Продолжение ЛП-разбиения на рѐбра
дерева
Как по ЛП-разбиению строить укладку
Как по ЛП-разбиению строить укладку
Как по ЛП-разбиению строить укладку
Полный порядок в вершине устроен так:
• сначала входящее ребро
• затем левые исходящие рёбра, окружённые
своими левыми и правыми обратными рёбрами
• затем правые исходящие рёбра, окружённые
своими левыми и правыми обратными рёбрами
Конфликт двух правых рѐбер
Конфликт двух правых рѐбер
Конфликт двух правых рѐбер
Конфликт двух правых рѐбер
Конфликт двух правых рѐбер
Конфликт двух правых рѐбер
Конфликт двух правых рѐбер
Конфликт разносторонних рѐбер
Конфликт разносторонних рѐбер
Конфликт разносторонних рѐбер
Конфликт разносторонних рѐбер

More Related Content

More from Alex Dainiak (20)

Основы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьяхОсновы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьях
Alex Dainiak
Основы теории графов 03: связность
Основы теории графов 03: связностьОсновы теории графов 03: связность
Основы теории графов 03: связность
Alex Dainiak
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—ФалкерсонаОсновы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Alex Dainiak
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Alex Dainiak
Конспект лекций по теории кодирования
Конспект лекций по теории кодированияКонспект лекций по теории кодирования
Конспект лекций по теории кодирования
Alex Dainiak
Графовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкостьГрафовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкость
Alex Dainiak
Приложения теории кодирования
Приложения теории кодированияПриложения теории кодирования
Приложения теории кодирования
Alex Dainiak
Циклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизацииЦиклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизации
Alex Dainiak
Циклические коды. Граница БЧХ
Циклические коды. Граница БЧХЦиклические коды. Граница БЧХ
Циклические коды. Граница БЧХ
Alex Dainiak
Коды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодированияКоды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодирования
Alex Dainiak
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—ШпильманаЗадача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Alex Dainiak
Линейные коды
Линейные кодыЛинейные коды
Линейные коды
Alex Dainiak
Границы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—БассалыгоГраницы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—Бассалыго
Alex Dainiak
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Alex Dainiak
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Alex Dainiak
Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.
Alex Dainiak
Визуализация графов: укладки деревьев
Визуализация графов: укладки деревьевВизуализация графов: укладки деревьев
Визуализация графов: укладки деревьев
Alex Dainiak
Визуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладкеВизуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладке
Alex Dainiak
Визуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудностьВизуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудность
Alex Dainiak
Размерность Вапника—Червоненкиса
Размерность Вапника—ЧервоненкисаРазмерность Вапника—Червоненкиса
Размерность Вапника—Червоненкиса
Alex Dainiak
Основы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьяхОсновы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьях
Alex Dainiak
Основы теории графов 03: связность
Основы теории графов 03: связностьОсновы теории графов 03: связность
Основы теории графов 03: связность
Alex Dainiak
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—ФалкерсонаОсновы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Alex Dainiak
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Alex Dainiak
Конспект лекций по теории кодирования
Конспект лекций по теории кодированияКонспект лекций по теории кодирования
Конспект лекций по теории кодирования
Alex Dainiak
Графовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкостьГрафовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкость
Alex Dainiak
Приложения теории кодирования
Приложения теории кодированияПриложения теории кодирования
Приложения теории кодирования
Alex Dainiak
Циклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизацииЦиклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизации
Alex Dainiak
Циклические коды. Граница БЧХ
Циклические коды. Граница БЧХЦиклические коды. Граница БЧХ
Циклические коды. Граница БЧХ
Alex Dainiak
Коды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодированияКоды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодирования
Alex Dainiak
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—ШпильманаЗадача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Alex Dainiak
Линейные коды
Линейные кодыЛинейные коды
Линейные коды
Alex Dainiak
Границы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—БассалыгоГраницы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—Бассалыго
Alex Dainiak
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Alex Dainiak
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Alex Dainiak
Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.
Alex Dainiak
Визуализация графов: укладки деревьев
Визуализация графов: укладки деревьевВизуализация графов: укладки деревьев
Визуализация графов: укладки деревьев
Alex Dainiak
Визуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладкеВизуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладке
Alex Dainiak
Визуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудностьВизуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудность
Alex Dainiak
Размерность Вапника—Червоненкиса
Размерность Вапника—ЧервоненкисаРазмерность Вапника—Червоненкиса
Размерность Вапника—Червоненкиса
Alex Dainiak

Визуализация графов: left-right алгоритм распознавания планарности