Изоморфные графы
Графы могут задаваться следующими способами:
1. Геометрическим способом - рисунки, схемы, диаграммы,
2. Алгебраическим способом - перечислением вершин и ребер,
3. Табличным способом.
4. Матричным способом.
Человеку удобно работать с графом-рисунком, так как он может легко установить связь между
вершинами в наглядном виде с помощью ребер, изображаемых непрерывными линиями. Такое
геометрическое представление плоского графа называется его реализацией.
Для машинной обработки удобнее задать граф в алгебраической форме - перечислением (списком)
вершин или ребер.
При переходе от алгебраического способа к геометрическому одному и тому же графу могут
соответствовать различные изображения - изоморфные графы, при этом от правильного изображения
зависит, например, свойство плоской реализуемости. Для этого нужно правильно задать сам граф.
Основным способом задания графа является перечисление всех его вершин и ребер. Но такое
представление, во-первых, несимметрично (с ним трудно работать, особенно ЭВМ), во-вторых, для
указания каждого ребра нужно еще раз выписывать соответствующие вершины, что плохо с точки
зрения сжатия и хранения информации.
При задании графа таблицей составляется таблица, состоящей из п строк (вершины) и т столбцов
(ребра). На пересечении строк и столбцов пишутся соответствующие знаки, которые показывают
отношение (инцидентность) вершины и ребра. Это может быть знаки "+" и "-", числа 0,1,-1 и др.
Главным во всех способах задания графа (диаграммой, матрицей, таблицей) является указание
соответствия между множествами п вершин Vt к т ребер X-t.
Пусть дан граф G(V, X), где V= {V1, V2 …Vn} - вершины, а Х= {Х1, Х2 .,., Хm} – ребра, среди
которых могут и кратные ребра (есть вершины, которые соединяет несколько ребер).
Матрицей инцидентности данного графа будет таблица, состоящая из n строк (вершины) и т
столбцов (ребра).
При рассмотрении неориентированного графа на пересечении строк и столбцов ставится число 1,
если соответствующие вершина и ребро инцидентны и ставится число 0, они не инцидентны.
При рассмотрении ориентированного графа на пересечении строк и столбцов ставится число 1,
если из вершины выходит соответствующее ее ребро. Если в вершину входит ребро, то ставят число
-1. Если вершина не инцидентна ребру и, то ставится число 0
Очевидно, что в каждом столбце матрицы инцидентности должно быть только два ненулевых
числа, так как ребро инцидентно двум вершинам. Число ненулевых элементов каждой строки - степень
соответствующей вершины.
Матрицы инцидентности прямоугольные, если число строк и столбцов различно. Если число
вершин и ребер в графе одинаковое, то получается квадратная матрица.
Матрицу можно сделать квадратной для любого графа без кратных ребер. В таких случаях строки
и столбцы изображают вершины. На пересечении строк и столбцов ставится число 1, если
соответствующие вершины соединены ребром и ставится число 0, если вершины не соединены.
Для неориентированного графа ребра одновременно принадлежат или не принадлежат графу, так
как символизируют одно и то же ребро. Матрица смежности неориентированного графа является
симметрической и не меняется при транспонировании.
Хотя формально каждая вершина всегда смежная сама с собой, в матрице смежности мы будем
ставить 0, если у нее нет петли, и 1, если есть одна петля.
Если граф имеет матрицу смежности и не имеет петель, на главной диагонали у него всегда стоят
нули.
2. Геометрический
3. Матрица смежности
abcd
a0110
b10 10
c1101
d00 10
4. Матрица инцидентности
uvwx
a100 0
b1 11 0
c010 1
d0 01 1
Граф с кратными ребрами (особенно орграф) сложно задать с помощью матрицы смежности. Для
ориентированного графа данное определение графа без кратных ребер является частным случаем графа
с кратными ребрами при кратности любого ребра, равной 1 или 0.
Бинарный поиск.
Бинарные деревья применяются в информатике для одной из самых распространенных в
прикладных науках операций - поиску. К нему прибегают, когда необходимо найти в некотором
упорядоченном массиве (множестве) определенную информацию. Например, в телефонном
справочнике - номер какого-нибудь абонента, в словаре - определенное слово, в файле - сведения о
зарплате сотрудников некоторого предприятия, сведения о зарплате отдельного работника и т.д.
Последовательный, или линейный, поиск является наиболее общим и простым методом выявления
интересующей информации: каждый элемент множества проверяется на соответствие заданным
условиям. Если множество неупорядочено, то такой процесс будет носить случайный характер. Если
множество было предварительно упорядочено (распределение по алфавиту фамилий в телефонном
справочнике, слов в словаре, распределение служащих предприятия по табельным номерам в
информации о зарплате), то удобнее использовать другой, более эффективный метод - бинарный поиск.
Бинарный поиск основан на методе половинного деления. Поиск начинается с середины
множества. Если первый же элемент удовлетворяет условию, то процесс поиска завершен, если не
удовлетворяет, то процесс продолжается в любой из половин. Если искомый элемент так и не найден, то
анализируется вторая половина до тех пор, пока не обнаружится соответствие найденного элемента
заданным условиям. Бинарные деревья необходимы, когда делается выбор одной альтернативы из двух.
Пусть надо найти дубликаты всех чисел в некотором списке. Можно применить сравнение
каждого числа с предшествующим на предмет «был - не был». Но тогда необходимо большое число
сравнений. Использование бинарных деревьев (БД) укорачивает процедуру сравнения. Считывается
новое число и помещается в узел - будущий корень нового БД. Каждое последующее число из списка
сравнивается с числом в корне БД. Если эти значения совпадают, то дубликат найден, если число
меньше корня, то процесс продолжается в правом поддереве, если больше - в левом поддереве.
Различные виды графов и деревьев находят широкое применение в учебном процессе. Поэтому
первоначальные сведения о них необходимы для успешного обучения в различных областях, так как с
их помощью часто передается учебная информация. Например, основные классы ЭВМ можно
изобразить в виде графа.
На процедуре бинарного поиска с использованием графа-дерева основана работа ЭВМ с базой
данных. Информация о базе может быть представлена несколькими способами, в том числе матричным.
Так называемые реляционные базы хранят различную информацию в форме таблиц, причем порядок
строк и столбцов задается при вводе данных. В базах возможна длительная работа с информацией, ее
реорганизация и обновление. С помощью автоматического поиска данных происходит их отбор на
основании запроса по определенным характерным признакам.
Запросы в виде сложносоставных высказываний образуются из простейших с помощью
логических связок и ряда логических операций. Все методы работы с информацией - поиск, обработка и
накопление - основаны на широком применении законов математической логики, знание которой
необходимо для понимания принципов работы вычислительных машин, различных электронных
устройств.
Логикой называют науку о законах и формах правильного мышления.
А разве можно научиться мыслить правильно? Что значит правильное и неправильное мышление?
Возможно ли постичь секреты идеально точных рассуждений?
Познакомившись с первыми разделами дискретной математики, вы, конечно, обратили внимание
на множество новых понятий и их определений.
Так ли уж важно определять новые понятия и требовать точности формулировок?
На эти и другие неожиданные вопросы попытаемся ответить в следующей главе, которая
приоткроет дверь в хранилище человеческой мудрости - первоначальные представления об основах
логики как классической, так и математической. Причем связь между логикой и математикой не
случайна: на протяжении двух с половиной тысячелетий они не только параллельно развивались, но и
обогащали друг друга. Недаром над входом в философскую школу Платона - Академию - было
начертано: «Пусть сюда не входит тот, кто не знает геометрии». Построение математики, в первую
очередь геометрии, как точной науки, имеющей достоверные выводы, дает возможность учиться на ее
примерах логически мыслить. И это делали еще древнегреческие философы. Знание законов логики,
философских законов, например диалектики, помогает при изучении самой математики, так как
способствует установлению предельно обобщенного, системного взгляда на отношения в окружающем
мире как в природе, так и в обществе.