Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

DM.III

.8.doc
Скачиваний:
17
Добавлен:
27.05.2015
Размер:
603.14 Кб
Скачать

Очевидно, что:

1) , ;

2) , ;

3) .

Можно, наконец, доказать, что для связного n-графа

.

Паросочетания возникают в различных задачах. Рассмотрим одну из них, известную под названием задача о свадьбах:

В компании юношей и девушек каждый из юношей знаком с несколькими девушками. В каком случае можно женить юношей так, чтобы каждый женился на одной из знакомых ему девушек?

Пусть, например, имеются три юноши ю1, ю2, ю3 и пять девушек д1, д2, д3, д4, д5. Первый юноша знаком со всеми девушками, второй – с девушками д1, д3, д4, а третий – с д2, д4, д5. Эту ситуацию можно иллюстрировать с помощью двудольного графа (рис. 134), в котором наличие ребра означает знакомство юноши с девушкой. Выделенные ребра показывают один из возможных вариантов бракосочетаний. Паросочетание, состоящее из этих ребер, является наибольшим.

Паросочетание в двудольном графе называется паросочетанием из в , если для каждой вершины существует вершина такая, что ребро . В этом случае также говорят, что паросочетание покрывает вершины доли . Наконец, взаимно однозначное соответствие между вершинами из и подмножеством вершин из , обладающее тем свойством, что соответствующие вершины соединены ребром, часто называют совершенным паросочетанием из в . Паросочетание на рис. 134 является совершенным паросочетанием из в , но не является паросочетанием из в (покрывает , но не покрывает ).

Таким образом, чтобы решить задачу о свадьбах, необходимо указать, при каких условиях существует совершенное поросочетание из множества юношей во множество девушек.

Паросочетания были определены для произвольных гра-фов, не обязательно двудольных. Однако при рассмотрении двудольных графов они возникают наиболее естественным образом. Решение очень многих практических задач связано с исследованием паросочетаний в двудольных графах. Задача о свадьбах – типичный пример подобной задачи. Рассмотрим еще одну такую задачу.

2. Критерий двудольности. Дальнейшее изучение паросочетаний в двудольных графах начнем с критерия двудольности.

Теорема 3.10.1 (Кёниг). Конечный связный граф является двудольным тогда и только тогда, когда он не имеет циклов нечетной длины.

Доказательство. Пусть – двудольный граф и – один из его циклов длины . Фиксируем некоторую вершину цикла и, выходя из нее, последовательно обойдем все ребер этого цикла. В итоге мы опять возвратимся в вершину . Поскольку концы каждого ребра двудольного графа лежат в разных долях, – четное число.

Обратно, пусть – связный граф, не имеющий циклов нечетной длины. Выберем вершину графа и построим разбиение множества всех его вершин на два подмножества и . Вершину включим в подмножество . В этот же класс отнесем все те вершины графа, для которых расстояние – четное число. Остальные вершины графа включим в класс , расстояние от до этих вершин – нечетное число.

Докажем, что ни в одном из подмножеств , нет двух смежных вершин, т.е. вершин, которые соединены друг с другом. Предположим, что это не так, т.е. существуют смежные вершины и , принадлежащие одному классу. Так как вершина принадлежит классу , а все смежные ей вершины – классу , то ни одна из вершин , не совпадает с вершиной . Пусть – кратчайшая цепь, соединяющая с , а – кратчайшая цепь, соединяющая с . Общие вершины этих цепей обозначим через , …, , считая от вершины . Поскольку любая подцепь кратчайшей цепи является кратчайшей, подцепи цепей , , соединяющие и , имеют одинаковые длины. По этой же причине одинаковые длины имеют их подцепи, соединяющие и (). Отсюда следует, что подцепи цепей , от вершины до вершин и имеют одинаковые четности. Но тогда объединение этих подцепей и ребра ) является циклом нечетной длины, а это противоречит условию. Теорема доказана. ■

Следствие. Конечный связный граф является двудольным тогда и только тогда, когда он не имеет простых циклов нечетной длины.

Из доказательства теоремы легко извлечь алгоритм распознавания двудольных графов. Пусть – произвольный конечный граф.

1. Выберем произвольную вершину и пометим ее номером 0.

2. Каждую вершину, смежную , пометим номером 1; множество таких вершин обозначим .

3. Все вершины, смежные вершинам множества , пометим номером 0, множество таких вершин обозначим .

4. Все вершины, смежные вершинам множества , пометим номером 1 и т.д.

Поскольку граф является конечным, после некоторого конечного числа шагов все вершины будут помечены. Пусть – множество вершин, помеченных нулем, а – множество вершин, помеченных единицей. Если ни в одном из этих множеств, не окажется вершин, которые соединены друг с другом, то граф является двудольным. В противном случае, граф двудольным не является.

3. Паросочетания и трансверсали в двудольных графах. Рассмотрим критерий существования совершенного паросочетания (т.е. покрывающего вершины одной из долей) в двудольном графе.

Теорема 3.10.2. Пусть – двудольный граф, – произвольное подмножество множества , – его окружение. Тогда совершенное паросочетание из в существует тогда и только тогда, когда

(3.10.1)

для каждого подмножества из .

На языке задачи о свадьбах необходимое условие состоит в том, чтобы любые юношей из были в совокупности знакомы по меньшей мере с девушками. Очевидно, что если для какого-то это условие нарушено, то женить требуемым способом невозможно даже этих юношей.

Задача 10.1. На дне рождения присутствуют девушки и 8 юношей. Оказалось, что для любых юношей число девушек, знакомых хотя бы с одним из них, не меньше, чем . Доказать, что не менее половины юношей могут одновременно пригласить на танец знакомую девушку.

Решение. Пусть – множество присутствующих юношей, – девушек. Построим двудольный граф присутствующих, в котором ребрами соединены вершины, соответствующие знакомым юношам и девушкам. Добавим 4 новых вершины в долю , каждую из них соединим с каждой вершиной доли . Полученный после этих операций новый граф обозначим .

Легко заметить, что существование в графе паросочетания, содержащего 4 ребра, эквивалентно существованию совершенного паросочетания в графе . Согласно теореме 3.10.2 последнее паросочетание существует тогда и только тогда, когда для любого подмножества . Отсюда следует, что окружение подмножества (т.е. девушки, знакомые с юношами из ) в графе должно состоять из вершин. По условию для подмножества , содержащего вершин, (для любых юношей число девушек, знакомых хотя бы с одним из них, не меньше, чем ). Следовательно, полученное требование выполняется.

При решении некоторых типов комбинаторных задач используется понятие трансверсали и теорема М.Холла, характеризующая это понятие.

Пусть – конечное непустое множество, а – семейство его подмножеств (необязательно различных и необязательно непересекающихся). Трансверсалью (или системой различных представителей) семейства называется всякое подмножество элементов из , в котором , и при .

Теорема 3.10.3 (Холл). Пусть – непустое множество, – семейство его подмножеств. Для существования трансверсали семейства необходимо и достаточно, чтобы для каждого объединение любых подмножеств , содержало не менее различных элементов.

119

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]