SlideShare a Scribd company logo
Основы теории графов - II
1 Эйлеровы циклы
1.1. Среди графов, показанных на рисунке, выберите эйлеровы графы.
a
b
c
d
e
f
(a)
b
a
e
h
l
k
c d
f g
i j
(b)
a
b c
d e
f g
(c)
a
b
c
d
e f
(d)
Рис. 1
Решение. Граф, показанный на рис.1,a, не является связным, поэтому эйлеровым не является.
Графы, показанные на рис.1,c и рис.1,d, содержат вершины нечетной степени, и поэтому также
не являются эйлеровыми. У связного графа на рис.1,b все вершины имеют четную степень, и
потому он является эйлеровым графом.
1.2. Пусть в связном графе G ровно 2k вершин имеют нечетную степень. Доказать, что в этом
графе можно построить k таких путей, что каждое ребро графа G будет принадлежать только
одному из этих путей.
Решение. Соединим 2k вершин с нечетными номерами попарно k ребрами ei. В результате
получим граф, в котором существует эйлеров цикл. Если удалить из этого цикла добавленные
ранее ребра ei, i = 1, . . . , k, то цикл распадется на k непересекающихся по ребрам путей, которые
нам и нужно было построить.
1.3. Имеется кусок проволоки длиной 12 сантиметров. На какое минимальное количество кус-
ков его следует разрезать, чтобы из этих кусков можно было бы изготовить каркас кубика
размерами 1 × 1 × 1 при условии, что проволоку в процессе изготовления кубиков можно сги-
бать?
Решение. Каркас куба представляет собой регулярный граф, степени всех восьми вершин ко-
торого равны трем. Так как их четное число, то, согласно упражнению 1.2, этот граф можно
разбить на четыре непересекающихся по ребрам пути. Как следствие, минимальное количе-
ство кусков, на которое можно разрезать проволоку для получения кубика единичного объема,
также равно четырем.
1.4. Рассмотрим связный простой регулярный граф G, степень любой вершины которого равна
четырем. Доказать, что ребра этого графа всегда можно покрасить в два цвета (красный и
синий) так, чтобы любая вершина была инцидентна ровно двум синим и ровно двум красным
ребрам.
Решение. Для данного графа G выполнены необходимые и достаточные условия существования
эйлерова цикла в графе. Будем двигаться по любому такому циклу, окрашивая встречающиеся
в порядке этого обхода ребра поочередно то в синий, то в красный цвет. При таком обходе мы
входим в каждую из вершин графа G, кроме начальной вершины x0, два раза, и выходим из
нее два раза. Поэтому все ребра, инцидентные этим вершинам, будут окрашены правильно.
В вершину x0 мы входим и сразу из нее выходим только один раз. Кроме того, мы выходим из
x0 в начале нашего алгоритма и возвращаемся в x0 в его конце. Для того, чтобы доказать, что
начальное и конечное ребро будут в результате работы алгоритма окрашены в разные цвета,
достаточно убедиться в том, что количество ребер в графе G четно. А этот факт сразу следует
из первой теоремы теории графов. Действительно, для 4-регулярного графа, построенного на n
вершинах, сумма степеней всех вершин равна 4n. Поэтому количество всех ребер этого графа
равно 2n.
1.5. Задача на программирование: найти эйлеров цикл в графе G.
Решение. Прежде всего, требуется проверить граф на эйлеровость. Для этого нужно убедиться
в том, что в графе нет вершин нечетной степени, а сам граф связен.
Простейший способ построения эйлерова цикла в графе G можно реализовать с помощью ре-
курсивного алгоритма вида
Euler(g, x)
while not g[x].isEmpty()
y = g[x][0]
g[x].remove(y)
g[y].remove(x)
euler(g, y)
print x
Именно, заходя в любую вершину x ∈ V (G), мы просматриваем все исходящие из x ребра.
Каждое ребро e = {x, y} мы удаляем из графа, переходим в вершину y и рекурсивно вызываем
наш алгоритм из этой вершины.
2 Двудольные графы. Раскраски графов
2.1. Доказать, что дерево является двудольным графом.
Решение. В дереве отсутствуют любые циклы, в том числе и нечётные. Таким образом, для
дерева выполняется необходимое и достаточное условие двудольности.
2.2. Какое максимальное количество ребер может быть в простом двудольном графе на 11
вершинах?
Решение. Прежде всего, заметим, что для заданной пары (m, l) количество ребер в двудольном
графе будет максимально в случае, когда любая вершина из первого блока X, |X| = m, соеди-
нена с каждой вершиной второго блока Y , |Y | = l. Иными словами, это должен быть полный
двудольный граф Km,l. Так как в графе Km,l каждая вершина блока X инцидентна l ребрам,
а всего у нас в X имеется m вершин, то суммарное количество ребер в графе Km,l равно l · m.
Осталось заметить, что при заданном количестве n = l+m вершин в графе Km,l максимум про-
изведения l · m достигается для четного n при k = l = n/2, а для нечетного — при l = (n − 1)/2,
m = l + 1. Следовательно, в случае n = 11 максимальное количество ребер равно 5 · 6 = 30.
2.3. Задача на программирование: проверить граф на двудольность.
Решение. В простейшем виде алгоритм можно описать так. Покрасим первую вершину в бе-
лый цвет. Каждую соседнюю с ней вершину красим в черный цвет. Затем каждую вершину, у
которой покрашена соседняя вершина, но она сама еще не покрашена, красим в цвет, противо-
положный цвету окрашенной с ней соседней вершины. Так делаем до тех пор, пока не покрасим
весь граф. Если после этого мы получаем конфликты, значит, граф не является двудольным.
1
2 3
4
5
6
78
9
10
11 12
(a)
1
2 3
4
5
6
78
9
10
11 12
(b)
Рис. 2
2.4. Определите хроматическое число графа G, представленного на рис.2,a.
Решение. Хроматическое число графа G равно четырем. Один из способов раскраски этого гра-
фа в четыре цвета представлен на рис.2,b. То, что в два цвета вершины G окрасить невозможно,
достаточно очевидно. Покажем, что мы не можем окрасить его вершины в три цвета.
Предположим, что χ(G) = 3, то есть что мы все же можем покрасить вершины графа G в три
цвета. Заметим, что среди любых пяти вершин графа G обязательно найдется хотя бы одна
пара смежных между собой вершин. Следовательно, в один и тот же цвет мы можем покрасить
не более чем четыре вершины. Так как цветов по нашему предположению три, а всего вершин
двенадцать, то мы получаем, что в случае χ(G) = 3 все множество вершин разбивается при
окрашивании на три блока, каждый из которых содержит по четыре вершины.
Покрасим в первый цвет вершину 1. Мы хотим найти еще три несмежные как с вершиной 1,
так и между собой вершины графа G, которые мы можем окрасить в тот же цвет. Несложно
убедиться, что это могут быть либо вершины 9, 8, 3, либо вершины 12, 5, 3. Теперь возьмем
вершину 2 и окрасим ее во второй цвет. Из тех же соображений получаем, что в тот же цвет
мы можем окрасить либо вершины 7, 6, 4, либо 10, 11, 4. Во всех случаях у нас для третьего
цвета остается четверка внутренних вершин (например, вершины 7, 6, 5, 12), две из которых
оказываются смежными. Таким образом, в три цвета этот граф покрасить невозможно.
1
2
3
4
5
6
7
8
Рис. 3
2.5. Предъявите способ начального упорядочивания вершин графа, представленного на рис.3,
для которого жадный алгоритм окрасит вершины в два цвета.
Решение. Например, такой последовательностью может быть последовательность вершин
1, 2, 3, 4, 5, 6, 7, 8.
2.6. Предъявите способ начального упорядочивания вершин графа, представленного на рис.3,
для которого жадный алгоритм окрасит вершины в четыре цвета.
Решение. В качестве такой последовательности следует, например, взять последовательность
вида
1, 5, 2, 6, 3, 7, 4, 8.
3 Паросочетания. Теорема Холла
3.1. Подсчитать количество совершенных паросочетаний у дерева на n вершинах.
Решение. Дерево может либо иметь лишь одно совершенное паросочетание, либо не иметь таких
паросочетаний вообще. Докажем это по индукции. Дерево K2 имеет единственное совершенное
паросочетание, дерево K1 совершенного паросочетания не имеет. Рассмотрим теперь дерево T
на n > 2 вершинах и какой-то лист x в нём. Совершенное паросочетание должно покрывать
вершину x. Следовательно, оно должно включать в себя ребро {x, y}, где y — единственная
смежная с x вершина дерева T. При этом все другие рёбра, инцидентные y, в строящееся
паросочетание включать уже нельзя. Удаляя тогда вершины x и y, мы получаем в общем случае
лес, состоящий из нескольких деревьев. По индукционному предположению, у каждого из этих
деревьев имеется либо одно, либо ни одного совершенного паросочетания. Предоположим, что
в каждом из этих деревьев имеется совершенное паросочетание. В этом случае, добавляя к
ребрам этих паросочетаний ребро {x, y}, мы получаем единственное паросочетание в исходном
дереве T. В противном случае в дереве T совершенные паросочетания отсутствуют.
3.2. Найти количество совершенных паросочетаний в полном графе K2n на 2n вершинах.
Решение. Таких паросочетаний в полном графе K2n ровно (2n − 1)!! штук. Действительно, вер-
шину x мы можем соединить ребром с любой другой вершиной полного графа. Следовательно,
имеется 2n − 1 способ выбрать ребро, соединяющее вершину x с любой другой отличной от
нее вершиной полного графа K2n. В оставшемся графе возьмем любую пока еще не покрытую
паросочетанием вершину y. Ее мы можем соединить ребром с любой из оставшихся (2n−3) вер-
шин, не покрытых строящимся паросочетанием. Продолжая далее, мы получим, что количество
совершенных паросочетаний равно
(2n − 1) · (2n − 3) · . . . · 3 · 1 = (2n − 1)!!
3.3. Определить минимальный размер наибольшего по включению паросочетания в простом
цикле C11, построенном на одиннадцати вершинах. Чему будет равен этот размер в случае
произвольного простого цикла Cn?
Решение. Наибольшее по включению паросочетание минимального размера содержит четыре
ребра (см.рис.4). В общем случае простого цикла Cn количество ребер в подобном паросочета-
нии равно числу t, такому, что n ∈ (3t − 3, 3t].
Рис. 4
Для доказательства предположим, что существует наибольшее по включению паросочетание
M размером r < t. Заметим, что в графе Cn могут существовать максимум два подряд идущих
ребра e1 и e2, не принадлежащих паросочетанию M. Рассмотрим путь P в графе Cn, начинаю-
щийся и заканчивающийся на ребрах из M и содержащий все ребра M. Длина такого пути не
превосходит 3r − 2. Действительно, любой описанный выше путь наибольшей длины должен
начинаться с ребра из M, затем должны идти ровно два ребра не из M, затем вновь ребро
из M, и так далее. У такого пути длина в точности равна 3r − 2, у любого другого пути она
меньше или равна 3r − 2 3(t − 1) − 2 = 3t − 5. Теперь рассмотрим дополнение P этого пути
P до всего графа Cn. Так как суммарная длина этих путей
|P| + |P | = |Cn| = n, то |P | = n − |P| n − (3r − 2) n − (3t − 5) > (−3) + 5 = 2.
Следовательно, паросочетание M можно увеличить, добавив по крайней мере одно ребро из P ,
а это противоречит тому, что M — наибольшее по включению паросочетание
3.4. Найти количество X-насыщенных паросочетаний в полном двудольном графе Kn,m.
Решение. Каждое такое паросочетание можно рассматривать как n-перестановку из m элемен-
тов без повторений, поэтому общее число X-насыщенных паросочетаний в Kn,m равно (m)n.
3.5. Какие из графов, изображенных на рис.5, имеют X-насыщенное паросочетание?
X Y
(a)
X Y
(b)
X Y
(c)
X Y
(d)
Рис. 5
Решение. Графы, показанные на рисунках (a) и (d), имеют -насыщенное паросочетание — для
них условие Холла выполняется. Для графа, показанного на рисунке (b), условие Холла нару-
шено на трех средних вершинах из доли X, а для графа на рисунке (c) это условие нарушено
на двух нижних вершинах доли X.

More Related Content

What's hot

Karnaugh map (k map)
Karnaugh map (k map)Karnaugh map (k map)
Karnaugh map (k map)
Adeen Ali
 
Gauss Jorden and Gauss Elimination method.pptx
Gauss Jorden and Gauss Elimination method.pptxGauss Jorden and Gauss Elimination method.pptx
Gauss Jorden and Gauss Elimination method.pptx
AHSANMEHBOOB12
 
Equations with Fractions on Both Sides
Equations with Fractions on Both SidesEquations with Fractions on Both Sides
Equations with Fractions on Both Sides
Passy World
 
CS6702 Unit III coloring ppt
CS6702   Unit III coloring pptCS6702   Unit III coloring ppt
CS6702 Unit III coloring ppt
Abilaasha Ganesan
 
Interesting applications of graph theory
Interesting applications of graph theoryInteresting applications of graph theory
Interesting applications of graph theoryTech_MX
 
Real life application
Real life applicationReal life application
Real life application
umadeviR3
 
Quicksort
QuicksortQuicksort
Quicksort
Vasileios Lampos
 
100 problemas maravillosos de matemáticas - Libro 18
100 problemas maravillosos de matemáticas - Libro 18100 problemas maravillosos de matemáticas - Libro 18
100 problemas maravillosos de matemáticas - Libro 18
José Mari Melgarejo Lanero
 
Recurrence relations
Recurrence relationsRecurrence relations
Recurrence relations
IIUM
 
Matrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesMatrices y sistemas de ecuaciones
Matrices y sistemas de ecuaciones
Brian Bastidas
 
סיכום הקורס במבוא להצפנה
סיכום הקורס במבוא להצפנהסיכום הקורס במבוא להצפנה
סיכום הקורס במבוא להצפנה
csnotes
 
A1 ch03 06 blue
A1 ch03 06  blueA1 ch03 06  blue
A1 ch03 06 blue
Wagner Olivo
 
Graph coloring and_applications
Graph coloring and_applicationsGraph coloring and_applications
Graph coloring and_applicationsmohammad alkhalil
 
Matrices - Discrete Structures
Matrices - Discrete StructuresMatrices - Discrete Structures
Matrices - Discrete Structures
Bretz Harllynne Moltio
 
1.3 Complex Numbers
1.3 Complex Numbers1.3 Complex Numbers
1.3 Complex Numbers
smiller5
 
Problema de las 8 reinas rebaza castañeda jhoser alberto
Problema de las 8 reinas  rebaza castañeda jhoser albertoProblema de las 8 reinas  rebaza castañeda jhoser alberto
Problema de las 8 reinas rebaza castañeda jhoser alberto
Jhoser Alberto Rebaza Castaeda
 
Notes completing the square
Notes   completing the squareNotes   completing the square
Notes completing the squareLori Rapp
 
Abstract algebra & its applications (1)
Abstract algebra & its applications (1)Abstract algebra & its applications (1)
Abstract algebra & its applications (1)
drselvarani
 

What's hot (20)

Karnaugh map (k map)
Karnaugh map (k map)Karnaugh map (k map)
Karnaugh map (k map)
 
Gauss Jorden and Gauss Elimination method.pptx
Gauss Jorden and Gauss Elimination method.pptxGauss Jorden and Gauss Elimination method.pptx
Gauss Jorden and Gauss Elimination method.pptx
 
Equations with Fractions on Both Sides
Equations with Fractions on Both SidesEquations with Fractions on Both Sides
Equations with Fractions on Both Sides
 
CS6702 Unit III coloring ppt
CS6702   Unit III coloring pptCS6702   Unit III coloring ppt
CS6702 Unit III coloring ppt
 
Interesting applications of graph theory
Interesting applications of graph theoryInteresting applications of graph theory
Interesting applications of graph theory
 
Real life application
Real life applicationReal life application
Real life application
 
Quicksort
QuicksortQuicksort
Quicksort
 
100 problemas maravillosos de matemáticas - Libro 18
100 problemas maravillosos de matemáticas - Libro 18100 problemas maravillosos de matemáticas - Libro 18
100 problemas maravillosos de matemáticas - Libro 18
 
Recurrence relations
Recurrence relationsRecurrence relations
Recurrence relations
 
Matrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesMatrices y sistemas de ecuaciones
Matrices y sistemas de ecuaciones
 
סיכום הקורס במבוא להצפנה
סיכום הקורס במבוא להצפנהסיכום הקורס במבוא להצפנה
סיכום הקורס במבוא להצפנה
 
A1 ch03 06 blue
A1 ch03 06  blueA1 ch03 06  blue
A1 ch03 06 blue
 
Graph coloring and_applications
Graph coloring and_applicationsGraph coloring and_applications
Graph coloring and_applications
 
Matrices - Discrete Structures
Matrices - Discrete StructuresMatrices - Discrete Structures
Matrices - Discrete Structures
 
graph theory
graph theory graph theory
graph theory
 
The four color theorem
The four color theoremThe four color theorem
The four color theorem
 
1.3 Complex Numbers
1.3 Complex Numbers1.3 Complex Numbers
1.3 Complex Numbers
 
Problema de las 8 reinas rebaza castañeda jhoser alberto
Problema de las 8 reinas  rebaza castañeda jhoser albertoProblema de las 8 reinas  rebaza castañeda jhoser alberto
Problema de las 8 reinas rebaza castañeda jhoser alberto
 
Notes completing the square
Notes   completing the squareNotes   completing the square
Notes completing the square
 
Abstract algebra & its applications (1)
Abstract algebra & its applications (1)Abstract algebra & its applications (1)
Abstract algebra & its applications (1)
 

Viewers also liked

Разбор задач по дискретной вероятности
Разбор задач по дискретной вероятностиРазбор задач по дискретной вероятности
Разбор задач по дискретной вероятности
DEVTYPE
 
Скорость роста функций
Скорость роста функцийСкорость роста функций
Скорость роста функций
DEVTYPE
 
ЖАДНЫЕ АЛГОРИТМЫ
ЖАДНЫЕ АЛГОРИТМЫ ЖАДНЫЕ АЛГОРИТМЫ
ЖАДНЫЕ АЛГОРИТМЫ
DEVTYPE
 
Continuity and Uniform Continuity
Continuity and Uniform ContinuityContinuity and Uniform Continuity
Continuity and Uniform Continuity
DEVTYPE
 
Жадные алгоритмы: введение
Жадные алгоритмы: введениеЖадные алгоритмы: введение
Жадные алгоритмы: введение
DEVTYPE
 
Зачем изучать алгоритмы?
Зачем изучать алгоритмы?Зачем изучать алгоритмы?
Зачем изучать алгоритмы?
DEVTYPE
 
Asymptotic Growth of Functions
Asymptotic Growth of FunctionsAsymptotic Growth of Functions
Asymptotic Growth of Functions
DEVTYPE
 
D-кучи и их применение
D-кучи и их применениеD-кучи и их применение
D-кучи и их применение
DEVTYPE
 
6. Теория графов ll
6. Теория графов ll6. Теория графов ll
6. Теория графов ll
DEVTYPE
 
Рукописные лекции по линейной алгебре
Рукописные лекции по линейной алгебреРукописные лекции по линейной алгебре
Рукописные лекции по линейной алгебре
DEVTYPE
 
Диаграммы Юнга, плоские разбиения и знакочередующиеся матрицы
Диаграммы Юнга, плоские разбиения и знакочередующиеся матрицыДиаграммы Юнга, плоские разбиения и знакочередующиеся матрицы
Диаграммы Юнга, плоские разбиения и знакочередующиеся матрицы
DEVTYPE
 
Лекция 7: Бинарные кучи (пирамиды)
Лекция 7: Бинарные кучи (пирамиды)Лекция 7: Бинарные кучи (пирамиды)
Лекция 7: Бинарные кучи (пирамиды)Mikhail Kurnosov
 
Алгоритмы и структуры данных осень 2013 лекция 8
Алгоритмы и структуры данных осень 2013 лекция 8Алгоритмы и структуры данных осень 2013 лекция 8
Алгоритмы и структуры данных осень 2013 лекция 8Technopark
 
Основы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задачОсновы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задач
DEVTYPE
 
Recurrences
RecurrencesRecurrences
Recurrences
DEVTYPE
 
Логарифм и экспонента
Логарифм и экспонентаЛогарифм и экспонента
Логарифм и экспонента
DEVTYPE
 
С. Дасгупта, Х. Пападимитриу, У. Вазирани. Алгоритмы
С. Дасгупта, Х. Пападимитриу, У. Вазирани. АлгоритмыС. Дасгупта, Х. Пападимитриу, У. Вазирани. Алгоритмы
С. Дасгупта, Х. Пападимитриу, У. Вазирани. Алгоритмы
DEVTYPE
 
7. Дискретная вероятность
7. Дискретная вероятность7. Дискретная вероятность
7. Дискретная вероятность
DEVTYPE
 
Математическая индукция
Математическая индукцияМатематическая индукция
Математическая индукция
DEVTYPE
 
Линейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задачЛинейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задач
DEVTYPE
 

Viewers also liked (20)

Разбор задач по дискретной вероятности
Разбор задач по дискретной вероятностиРазбор задач по дискретной вероятности
Разбор задач по дискретной вероятности
 
Скорость роста функций
Скорость роста функцийСкорость роста функций
Скорость роста функций
 
ЖАДНЫЕ АЛГОРИТМЫ
ЖАДНЫЕ АЛГОРИТМЫ ЖАДНЫЕ АЛГОРИТМЫ
ЖАДНЫЕ АЛГОРИТМЫ
 
Continuity and Uniform Continuity
Continuity and Uniform ContinuityContinuity and Uniform Continuity
Continuity and Uniform Continuity
 
Жадные алгоритмы: введение
Жадные алгоритмы: введениеЖадные алгоритмы: введение
Жадные алгоритмы: введение
 
Зачем изучать алгоритмы?
Зачем изучать алгоритмы?Зачем изучать алгоритмы?
Зачем изучать алгоритмы?
 
Asymptotic Growth of Functions
Asymptotic Growth of FunctionsAsymptotic Growth of Functions
Asymptotic Growth of Functions
 
D-кучи и их применение
D-кучи и их применениеD-кучи и их применение
D-кучи и их применение
 
6. Теория графов ll
6. Теория графов ll6. Теория графов ll
6. Теория графов ll
 
Рукописные лекции по линейной алгебре
Рукописные лекции по линейной алгебреРукописные лекции по линейной алгебре
Рукописные лекции по линейной алгебре
 
Диаграммы Юнга, плоские разбиения и знакочередующиеся матрицы
Диаграммы Юнга, плоские разбиения и знакочередующиеся матрицыДиаграммы Юнга, плоские разбиения и знакочередующиеся матрицы
Диаграммы Юнга, плоские разбиения и знакочередующиеся матрицы
 
Лекция 7: Бинарные кучи (пирамиды)
Лекция 7: Бинарные кучи (пирамиды)Лекция 7: Бинарные кучи (пирамиды)
Лекция 7: Бинарные кучи (пирамиды)
 
Алгоритмы и структуры данных осень 2013 лекция 8
Алгоритмы и структуры данных осень 2013 лекция 8Алгоритмы и структуры данных осень 2013 лекция 8
Алгоритмы и структуры данных осень 2013 лекция 8
 
Основы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задачОсновы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задач
 
Recurrences
RecurrencesRecurrences
Recurrences
 
Логарифм и экспонента
Логарифм и экспонентаЛогарифм и экспонента
Логарифм и экспонента
 
С. Дасгупта, Х. Пападимитриу, У. Вазирани. Алгоритмы
С. Дасгупта, Х. Пападимитриу, У. Вазирани. АлгоритмыС. Дасгупта, Х. Пападимитриу, У. Вазирани. Алгоритмы
С. Дасгупта, Х. Пападимитриу, У. Вазирани. Алгоритмы
 
7. Дискретная вероятность
7. Дискретная вероятность7. Дискретная вероятность
7. Дискретная вероятность
 
Математическая индукция
Математическая индукцияМатематическая индукция
Математическая индукция
 
Линейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задачЛинейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задач
 

Similar to Разбор задач модуля "Теория графов ll"

Основы теории графов - I
Основы теории графов - IОсновы теории графов - I
Основы теории графов - I
DEVTYPE
 
Основы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраскиОсновы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраски
Alex Dainiak
 
Лекция 1 часть 3 декартово произв
Лекция 1 часть 3 декартово произвЛекция 1 часть 3 декартово произв
Лекция 1 часть 3 декартово произвИрина Гусева
 
Основы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графыОсновы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графы
Alex Dainiak
 
13.01.9.4
13.01.9.413.01.9.4
13.01.9.4detki
 
Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)
Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)
Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)eekdiary
 
десять способов решений кв. ур ий
десять способов решений кв. ур ийдесять способов решений кв. ур ий
десять способов решений кв. ур ийNovikovaOG
 
Геометрия помогает считать
Геометрия помогает считатьГеометрия помогает считать
Геометрия помогает считать
Garik Yenokyan
 
Разбор задач областного этапа всероссийской олимпиады школьников по информати...
Разбор задач областного этапа всероссийской олимпиады школьников по информати...Разбор задач областного этапа всероссийской олимпиады школьников по информати...
Разбор задач областного этапа всероссийской олимпиады школьников по информати...
Олег Стрекаловский
 
Основы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графовОсновы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графов
Alex Dainiak
 
Квадратичная математика
Квадратичная математикаКвадратичная математика
Квадратичная математика
DEVTYPE
 
13.01.9.2
13.01.9.213.01.9.2
13.01.9.2detki
 
Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан...
 Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан... Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан...
Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан...eekdiary
 
Задания ОГЭ на графы
Задания ОГЭ на графыЗадания ОГЭ на графы
Задания ОГЭ на графы
Ирина Гераськина
 
Методы построения и анализа алгоритмов
Методы построения и анализа алгоритмовМетоды построения и анализа алгоритмов
Методы построения и анализа алгоритмов
Nick535
 
графы дженжеруха
графы дженжерухаграфы дженжеруха
графы дженжерухаGala Timofeeva
 
Задачи Пятой олимпиады Эйлера учителей Санкт-Петербурга
Задачи Пятой олимпиады Эйлера учителей Санкт-ПетербургаЗадачи Пятой олимпиады Эйлера учителей Санкт-Петербурга
Задачи Пятой олимпиады Эйлера учителей Санкт-Петербургаeekdiary
 
Алгебра и начала анализа (решение задач)
Алгебра и начала анализа (решение задач)Алгебра и начала анализа (решение задач)
Алгебра и начала анализа (решение задач)Eza2008
 
Математика - Метод математической индукции в геометрии
Математика - Метод математической индукции в геометрии Математика - Метод математической индукции в геометрии
Математика - Метод математической индукции в геометрии
ozlmgouru
 
Метод координат
Метод координатМетод координат
Метод координат
Garik Yenokyan
 

Similar to Разбор задач модуля "Теория графов ll" (20)

Основы теории графов - I
Основы теории графов - IОсновы теории графов - I
Основы теории графов - I
 
Основы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраскиОсновы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраски
 
Лекция 1 часть 3 декартово произв
Лекция 1 часть 3 декартово произвЛекция 1 часть 3 декартово произв
Лекция 1 часть 3 декартово произв
 
Основы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графыОсновы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графы
 
13.01.9.4
13.01.9.413.01.9.4
13.01.9.4
 
Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)
Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)
Применение леммы Бернсайда к решению комбинаторных задач (авт. Бородулина)
 
десять способов решений кв. ур ий
десять способов решений кв. ур ийдесять способов решений кв. ур ий
десять способов решений кв. ур ий
 
Геометрия помогает считать
Геометрия помогает считатьГеометрия помогает считать
Геометрия помогает считать
 
Разбор задач областного этапа всероссийской олимпиады школьников по информати...
Разбор задач областного этапа всероссийской олимпиады школьников по информати...Разбор задач областного этапа всероссийской олимпиады школьников по информати...
Разбор задач областного этапа всероссийской олимпиады школьников по информати...
 
Основы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графовОсновы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графов
 
Квадратичная математика
Квадратичная математикаКвадратичная математика
Квадратичная математика
 
13.01.9.2
13.01.9.213.01.9.2
13.01.9.2
 
Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан...
 Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан... Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан...
Диагностическая работа № 1 по математике 18 мая 2011 года. 10 классы. Вариан...
 
Задания ОГЭ на графы
Задания ОГЭ на графыЗадания ОГЭ на графы
Задания ОГЭ на графы
 
Методы построения и анализа алгоритмов
Методы построения и анализа алгоритмовМетоды построения и анализа алгоритмов
Методы построения и анализа алгоритмов
 
графы дженжеруха
графы дженжерухаграфы дженжеруха
графы дженжеруха
 
Задачи Пятой олимпиады Эйлера учителей Санкт-Петербурга
Задачи Пятой олимпиады Эйлера учителей Санкт-ПетербургаЗадачи Пятой олимпиады Эйлера учителей Санкт-Петербурга
Задачи Пятой олимпиады Эйлера учителей Санкт-Петербурга
 
Алгебра и начала анализа (решение задач)
Алгебра и начала анализа (решение задач)Алгебра и начала анализа (решение задач)
Алгебра и начала анализа (решение задач)
 
Математика - Метод математической индукции в геометрии
Математика - Метод математической индукции в геометрии Математика - Метод математической индукции в геометрии
Математика - Метод математической индукции в геометрии
 
Метод координат
Метод координатМетод координат
Метод координат
 

More from DEVTYPE

1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойства1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойства
DEVTYPE
 
1.3 Описательная статистика
1.3 Описательная статистика1.3 Описательная статистика
1.3 Описательная статистика
DEVTYPE
 
1.2 Выборка. Выборочное пространство
1.2 Выборка. Выборочное пространство1.2 Выборка. Выборочное пространство
1.2 Выборка. Выборочное пространство
DEVTYPE
 
Coin Change Problem
Coin Change ProblemCoin Change Problem
Coin Change Problem
DEVTYPE
 
Кучи
КучиКучи
Кучи
DEVTYPE
 
Кодирование Хаффмана
Кодирование ХаффманаКодирование Хаффмана
Кодирование Хаффмана
DEVTYPE
 
Наибольший общий делитель
Наибольший общий делительНаибольший общий делитель
Наибольший общий делитель
DEVTYPE
 
Числа Фибоначчи
Числа ФибоначчиЧисла Фибоначчи
Числа Фибоначчи
DEVTYPE
 
О-символика
О-символикаО-символика
О-символика
DEVTYPE
 
Задачи №2. Работа со звуком.
Задачи №2. Работа со звуком.Задачи №2. Работа со звуком.
Задачи №2. Работа со звуком.
DEVTYPE
 
Задача №1. Работа с видео.
Задача №1. Работа с видео.Задача №1. Работа с видео.
Задача №1. Работа с видео.
DEVTYPE
 
Тестовое задание для веб-программиста
Тестовое задание для веб-программистаТестовое задание для веб-программиста
Тестовое задание для веб-программиста
DEVTYPE
 
Программирование: теоремы и задачи
Программирование: теоремы и задачиПрограммирование: теоремы и задачи
Программирование: теоремы и задачи
DEVTYPE
 

More from DEVTYPE (13)

1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойства1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойства
 
1.3 Описательная статистика
1.3 Описательная статистика1.3 Описательная статистика
1.3 Описательная статистика
 
1.2 Выборка. Выборочное пространство
1.2 Выборка. Выборочное пространство1.2 Выборка. Выборочное пространство
1.2 Выборка. Выборочное пространство
 
Coin Change Problem
Coin Change ProblemCoin Change Problem
Coin Change Problem
 
Кучи
КучиКучи
Кучи
 
Кодирование Хаффмана
Кодирование ХаффманаКодирование Хаффмана
Кодирование Хаффмана
 
Наибольший общий делитель
Наибольший общий делительНаибольший общий делитель
Наибольший общий делитель
 
Числа Фибоначчи
Числа ФибоначчиЧисла Фибоначчи
Числа Фибоначчи
 
О-символика
О-символикаО-символика
О-символика
 
Задачи №2. Работа со звуком.
Задачи №2. Работа со звуком.Задачи №2. Работа со звуком.
Задачи №2. Работа со звуком.
 
Задача №1. Работа с видео.
Задача №1. Работа с видео.Задача №1. Работа с видео.
Задача №1. Работа с видео.
 
Тестовое задание для веб-программиста
Тестовое задание для веб-программистаТестовое задание для веб-программиста
Тестовое задание для веб-программиста
 
Программирование: теоремы и задачи
Программирование: теоремы и задачиПрограммирование: теоремы и задачи
Программирование: теоремы и задачи
 

Разбор задач модуля "Теория графов ll"

  • 1. Основы теории графов - II 1 Эйлеровы циклы 1.1. Среди графов, показанных на рисунке, выберите эйлеровы графы. a b c d e f (a) b a e h l k c d f g i j (b) a b c d e f g (c) a b c d e f (d) Рис. 1 Решение. Граф, показанный на рис.1,a, не является связным, поэтому эйлеровым не является. Графы, показанные на рис.1,c и рис.1,d, содержат вершины нечетной степени, и поэтому также не являются эйлеровыми. У связного графа на рис.1,b все вершины имеют четную степень, и потому он является эйлеровым графом. 1.2. Пусть в связном графе G ровно 2k вершин имеют нечетную степень. Доказать, что в этом графе можно построить k таких путей, что каждое ребро графа G будет принадлежать только одному из этих путей. Решение. Соединим 2k вершин с нечетными номерами попарно k ребрами ei. В результате получим граф, в котором существует эйлеров цикл. Если удалить из этого цикла добавленные ранее ребра ei, i = 1, . . . , k, то цикл распадется на k непересекающихся по ребрам путей, которые нам и нужно было построить.
  • 2. 1.3. Имеется кусок проволоки длиной 12 сантиметров. На какое минимальное количество кус- ков его следует разрезать, чтобы из этих кусков можно было бы изготовить каркас кубика размерами 1 × 1 × 1 при условии, что проволоку в процессе изготовления кубиков можно сги- бать? Решение. Каркас куба представляет собой регулярный граф, степени всех восьми вершин ко- торого равны трем. Так как их четное число, то, согласно упражнению 1.2, этот граф можно разбить на четыре непересекающихся по ребрам пути. Как следствие, минимальное количе- ство кусков, на которое можно разрезать проволоку для получения кубика единичного объема, также равно четырем. 1.4. Рассмотрим связный простой регулярный граф G, степень любой вершины которого равна четырем. Доказать, что ребра этого графа всегда можно покрасить в два цвета (красный и синий) так, чтобы любая вершина была инцидентна ровно двум синим и ровно двум красным ребрам. Решение. Для данного графа G выполнены необходимые и достаточные условия существования эйлерова цикла в графе. Будем двигаться по любому такому циклу, окрашивая встречающиеся в порядке этого обхода ребра поочередно то в синий, то в красный цвет. При таком обходе мы входим в каждую из вершин графа G, кроме начальной вершины x0, два раза, и выходим из нее два раза. Поэтому все ребра, инцидентные этим вершинам, будут окрашены правильно. В вершину x0 мы входим и сразу из нее выходим только один раз. Кроме того, мы выходим из x0 в начале нашего алгоритма и возвращаемся в x0 в его конце. Для того, чтобы доказать, что начальное и конечное ребро будут в результате работы алгоритма окрашены в разные цвета, достаточно убедиться в том, что количество ребер в графе G четно. А этот факт сразу следует из первой теоремы теории графов. Действительно, для 4-регулярного графа, построенного на n вершинах, сумма степеней всех вершин равна 4n. Поэтому количество всех ребер этого графа равно 2n. 1.5. Задача на программирование: найти эйлеров цикл в графе G. Решение. Прежде всего, требуется проверить граф на эйлеровость. Для этого нужно убедиться в том, что в графе нет вершин нечетной степени, а сам граф связен. Простейший способ построения эйлерова цикла в графе G можно реализовать с помощью ре- курсивного алгоритма вида Euler(g, x) while not g[x].isEmpty() y = g[x][0] g[x].remove(y) g[y].remove(x) euler(g, y) print x Именно, заходя в любую вершину x ∈ V (G), мы просматриваем все исходящие из x ребра. Каждое ребро e = {x, y} мы удаляем из графа, переходим в вершину y и рекурсивно вызываем наш алгоритм из этой вершины.
  • 3. 2 Двудольные графы. Раскраски графов 2.1. Доказать, что дерево является двудольным графом. Решение. В дереве отсутствуют любые циклы, в том числе и нечётные. Таким образом, для дерева выполняется необходимое и достаточное условие двудольности. 2.2. Какое максимальное количество ребер может быть в простом двудольном графе на 11 вершинах? Решение. Прежде всего, заметим, что для заданной пары (m, l) количество ребер в двудольном графе будет максимально в случае, когда любая вершина из первого блока X, |X| = m, соеди- нена с каждой вершиной второго блока Y , |Y | = l. Иными словами, это должен быть полный двудольный граф Km,l. Так как в графе Km,l каждая вершина блока X инцидентна l ребрам, а всего у нас в X имеется m вершин, то суммарное количество ребер в графе Km,l равно l · m. Осталось заметить, что при заданном количестве n = l+m вершин в графе Km,l максимум про- изведения l · m достигается для четного n при k = l = n/2, а для нечетного — при l = (n − 1)/2, m = l + 1. Следовательно, в случае n = 11 максимальное количество ребер равно 5 · 6 = 30. 2.3. Задача на программирование: проверить граф на двудольность. Решение. В простейшем виде алгоритм можно описать так. Покрасим первую вершину в бе- лый цвет. Каждую соседнюю с ней вершину красим в черный цвет. Затем каждую вершину, у которой покрашена соседняя вершина, но она сама еще не покрашена, красим в цвет, противо- положный цвету окрашенной с ней соседней вершины. Так делаем до тех пор, пока не покрасим весь граф. Если после этого мы получаем конфликты, значит, граф не является двудольным. 1 2 3 4 5 6 78 9 10 11 12 (a) 1 2 3 4 5 6 78 9 10 11 12 (b) Рис. 2 2.4. Определите хроматическое число графа G, представленного на рис.2,a. Решение. Хроматическое число графа G равно четырем. Один из способов раскраски этого гра- фа в четыре цвета представлен на рис.2,b. То, что в два цвета вершины G окрасить невозможно, достаточно очевидно. Покажем, что мы не можем окрасить его вершины в три цвета. Предположим, что χ(G) = 3, то есть что мы все же можем покрасить вершины графа G в три цвета. Заметим, что среди любых пяти вершин графа G обязательно найдется хотя бы одна
  • 4. пара смежных между собой вершин. Следовательно, в один и тот же цвет мы можем покрасить не более чем четыре вершины. Так как цветов по нашему предположению три, а всего вершин двенадцать, то мы получаем, что в случае χ(G) = 3 все множество вершин разбивается при окрашивании на три блока, каждый из которых содержит по четыре вершины. Покрасим в первый цвет вершину 1. Мы хотим найти еще три несмежные как с вершиной 1, так и между собой вершины графа G, которые мы можем окрасить в тот же цвет. Несложно убедиться, что это могут быть либо вершины 9, 8, 3, либо вершины 12, 5, 3. Теперь возьмем вершину 2 и окрасим ее во второй цвет. Из тех же соображений получаем, что в тот же цвет мы можем окрасить либо вершины 7, 6, 4, либо 10, 11, 4. Во всех случаях у нас для третьего цвета остается четверка внутренних вершин (например, вершины 7, 6, 5, 12), две из которых оказываются смежными. Таким образом, в три цвета этот граф покрасить невозможно. 1 2 3 4 5 6 7 8 Рис. 3 2.5. Предъявите способ начального упорядочивания вершин графа, представленного на рис.3, для которого жадный алгоритм окрасит вершины в два цвета. Решение. Например, такой последовательностью может быть последовательность вершин 1, 2, 3, 4, 5, 6, 7, 8. 2.6. Предъявите способ начального упорядочивания вершин графа, представленного на рис.3, для которого жадный алгоритм окрасит вершины в четыре цвета. Решение. В качестве такой последовательности следует, например, взять последовательность вида 1, 5, 2, 6, 3, 7, 4, 8. 3 Паросочетания. Теорема Холла 3.1. Подсчитать количество совершенных паросочетаний у дерева на n вершинах. Решение. Дерево может либо иметь лишь одно совершенное паросочетание, либо не иметь таких паросочетаний вообще. Докажем это по индукции. Дерево K2 имеет единственное совершенное паросочетание, дерево K1 совершенного паросочетания не имеет. Рассмотрим теперь дерево T на n > 2 вершинах и какой-то лист x в нём. Совершенное паросочетание должно покрывать вершину x. Следовательно, оно должно включать в себя ребро {x, y}, где y — единственная смежная с x вершина дерева T. При этом все другие рёбра, инцидентные y, в строящееся
  • 5. паросочетание включать уже нельзя. Удаляя тогда вершины x и y, мы получаем в общем случае лес, состоящий из нескольких деревьев. По индукционному предположению, у каждого из этих деревьев имеется либо одно, либо ни одного совершенного паросочетания. Предоположим, что в каждом из этих деревьев имеется совершенное паросочетание. В этом случае, добавляя к ребрам этих паросочетаний ребро {x, y}, мы получаем единственное паросочетание в исходном дереве T. В противном случае в дереве T совершенные паросочетания отсутствуют. 3.2. Найти количество совершенных паросочетаний в полном графе K2n на 2n вершинах. Решение. Таких паросочетаний в полном графе K2n ровно (2n − 1)!! штук. Действительно, вер- шину x мы можем соединить ребром с любой другой вершиной полного графа. Следовательно, имеется 2n − 1 способ выбрать ребро, соединяющее вершину x с любой другой отличной от нее вершиной полного графа K2n. В оставшемся графе возьмем любую пока еще не покрытую паросочетанием вершину y. Ее мы можем соединить ребром с любой из оставшихся (2n−3) вер- шин, не покрытых строящимся паросочетанием. Продолжая далее, мы получим, что количество совершенных паросочетаний равно (2n − 1) · (2n − 3) · . . . · 3 · 1 = (2n − 1)!! 3.3. Определить минимальный размер наибольшего по включению паросочетания в простом цикле C11, построенном на одиннадцати вершинах. Чему будет равен этот размер в случае произвольного простого цикла Cn? Решение. Наибольшее по включению паросочетание минимального размера содержит четыре ребра (см.рис.4). В общем случае простого цикла Cn количество ребер в подобном паросочета- нии равно числу t, такому, что n ∈ (3t − 3, 3t]. Рис. 4 Для доказательства предположим, что существует наибольшее по включению паросочетание M размером r < t. Заметим, что в графе Cn могут существовать максимум два подряд идущих ребра e1 и e2, не принадлежащих паросочетанию M. Рассмотрим путь P в графе Cn, начинаю- щийся и заканчивающийся на ребрах из M и содержащий все ребра M. Длина такого пути не превосходит 3r − 2. Действительно, любой описанный выше путь наибольшей длины должен начинаться с ребра из M, затем должны идти ровно два ребра не из M, затем вновь ребро из M, и так далее. У такого пути длина в точности равна 3r − 2, у любого другого пути она меньше или равна 3r − 2 3(t − 1) − 2 = 3t − 5. Теперь рассмотрим дополнение P этого пути P до всего графа Cn. Так как суммарная длина этих путей |P| + |P | = |Cn| = n, то |P | = n − |P| n − (3r − 2) n − (3t − 5) > (−3) + 5 = 2.
  • 6. Следовательно, паросочетание M можно увеличить, добавив по крайней мере одно ребро из P , а это противоречит тому, что M — наибольшее по включению паросочетание 3.4. Найти количество X-насыщенных паросочетаний в полном двудольном графе Kn,m. Решение. Каждое такое паросочетание можно рассматривать как n-перестановку из m элемен- тов без повторений, поэтому общее число X-насыщенных паросочетаний в Kn,m равно (m)n. 3.5. Какие из графов, изображенных на рис.5, имеют X-насыщенное паросочетание? X Y (a) X Y (b) X Y (c) X Y (d) Рис. 5 Решение. Графы, показанные на рисунках (a) и (d), имеют -насыщенное паросочетание — для них условие Холла выполняется. Для графа, показанного на рисунке (b), условие Холла нару- шено на трех средних вершинах из доли X, а для графа на рисунке (c) это условие нарушено на двух нижних вершинах доли X.