СТРУКТУРЫ ДАННЫХ: ДЕРЕВЬЯ, СЕТИ, ГРАФЫ, ТАБЛИЦЫ ИНФОРМАЦИОННЫЕ МОДЕЛИ Ключевые слова • что такое граф, • что такое дерево, • что такое сеть Данные, используемые в любой информационной модели, всегда определенным образом упорядочены, структурированы. Иначе можно сказать так: данные, на которых базируется информационная модель, представляют собой систему со всеми характерными признаками — элементным составом, структурой, назначением. Такие структурированные системы данных часто называют структурами данных. Исследуя некоторую реальную систему (объект моделирования), системный аналитик строит ее теоретическую модель Графы словесное описание некоторой местности: «Наш район состоит из пяти поселков: Дедкино, Бабкино, Репкино, Кошкино и Мышкино. Автомобильные дороги проложены между: Дедкино и Бабкино, Дедкино и Кошкино, Бабкино и Мышкино, Бабкиной Кошкино, Кошкино и Репкино» Д Б К М Р Неориентированный граф (сеть) Граф отображает элементный состав системы и структуру связей. Составными частями графа являются вершины и ребра. Здесь вершины изображены кружками, обозначающими элементы системы, а ребра изображены линиями, показывающими связи (отношения) между элементами. Построенный граф позволяет, например, ответить на вопрос: через какие поселки надо проехать, чтобы добраться из Репкино в Мышкино. Видно, что есть два возможных пути; обозначим их так: 1) Р —К —Б —М; 2) Р —К —Д —Б —М. Для сети характерна возможность множества различных путей перемещения по ребрам между некоторыми парами вершин. Графы При переливании крови от одного человека к другому не все группы совместимы. Граф показывает возможные варианты переливания крови. Группы крови обозначены вершинами графа с соответствующими номерами, а стрелки указывают на возможность переливания одной группы крови человеку с другой группой крови. I II III IV Ориентированный граф Связи между вершинами данного графа несимметричны и поэтому изображаются направленными линиями со стрелками. Такие линии принято называть дугами (в отличие от ребер неориентированных графов). Граф с такими свойствами называется ориентированным. Иерархические структуры (деревья) Российская Федерация Центральный округ Башкирия Приволжский округ Удмуртия Пермь Уральский округ Северо-Западный округ Пермский край Кунгур Нижегородская обл. Березники Граф иерархической системы (административная структура Российской Федерации) Такой граф называется деревом. Основным свойством дерева является то, что между любыми двумя его вершинами существует единственный путь. Деревья не содержат циклов и петель. Иерархические структуры (деревья) Интернет com ru edu org psu as pstu hidra mail www Иерархическая структура доменных адресов в Интернете Адрес компьютера включает в себя последовательность доменов и имя компьютера (сначала записывается имя компьютера, затем домен нижнего уровня и т. д., до домена самого верхнего уровня). Таблицы Простейшая таблица состоит из строк и граф (столбцов). В верхней строке таблицы обычно располагаются заголовки столбцов. Пересечение строки и столбца образует ячейку. Таблица. Погода Дата Осадки Температура , ⁰С Давление, мм рт. ст. Влажность, % 15.03.2014 Снег -3,5 746 67 16.03.2014 Без осадков 0 750 62 17.03.2014 Туман 1,0 740 100 18.03.2014 Дождь 3,4 745 96 19.03.2014 Без осадков 5,2 760 87 Вопросы и задания 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Что такое граф? Из чего он состоит? Какой граф называется неориентированным? Что такое сеть? Какие характерные особенности имеет сеть? Какой граф называется ориентированным? Приведите примеры. Дайте имена возможным связям между следующими объектами и изобразите связи между ними в форме графа: брат и сестра; ученик и школа; Саша и Маша; Москва и Берлин; министр, директор, рабочий; Пушкин и Дантес; Европа, Франция, Париж. Изобразите в виде графа систему, состоящую из четырех одноклассников, между которыми существуют следующие связи (взаимоотношения): дружат Саша и Маша, Саша и Даша, Маша и Гриша, Гриша и Саша. Глядя на полученный граф, ответьте на вопрос: с кем Саша может поделиться секретом, не рискуя, что он станет известен кому-то другому? Нарисуйте два варианта графа системы «Компьютер», содержащего следующие вершины: процессор, оперативная память, внешняя память, клавиатура, монитор, принтер; а) линия связи обозначает отношение «передает информацию»; б) линия связи обозначает отношение «управляет». Граф с какими свойствами называют деревом? Что такое корень дерева, ветви, листья? Какие системы называют иерархическими? Постройте граф структуры управления вашей школой. Оказался ли он деревом? Если да, то что находится в корне этого дерева? Что является листьями? Вопросы и задания 1. Откройте страницу с содержанием данного учебника. Изобразите структуру этого содержания в виде дерева. 2. В чем состоит удобство табличного представления информации? 3. Придумайте свои примеры таблиц типа «объект-свойство» и «объект-объект». 4. Что такое двоичная матрица? Какую информацию она в себе содержит? 5. Нарисуйте произвольную структуру глобальной компьютерной сети в виде графа, в котором вершины обозначают серверы, а ребра — линии связи. Опишите эту сеть в виде двоичной матрицы смежности. 6. Двоичные матрицы удобно использовать для решения некоторых логических задач — головоломок. Попробуйте таким путем решить следующие задачи. 7. Имена Иванова, Петрова, Семенова и Николаева — Иван, Петр, Семен и Николай, причем только у Николаева имя совпадает с фамилией, т. е. его зовут Николай. Семенова зовут не Петром. Определить фамилию и имя каждого человека. 8. В Норильске, Москве, Ростове и Пятигорске живут четыре супружеские пары, причем в каждом городе — только одна пара. Имена этих супругов: Антон, Борис, Давид, Григорий, Ольга, Мария, Светлана, Екатерина. Антон живет в Норильске, Борис и Ольга — супруги, Григорий и Светлана не живут в одном городе, Мария живет в Москве, Светлана — ростовчанка. Кто на ком женат и кто где живет? 9. Нарисуйте родословное дерево своей семьи (только по мужской или только по женской линии) с наибольшим числом известных вам уровней. Полученное дерево приведите к табличной форме. В полях, значения которых неизвестны, по ставьте прочерки. Система основных понятий Структура данных Графы Таблицы Разновидности графа Элементы прямоугольной таблицы Деревья Сети Строки Типы связей в графе Один ко многим Многие ко многим Элементы дерева Элементы сети Корень Ветви Листья Единственность пути между вершинами Вершины Рёбра Множественность пути между вершинами Столбцы Ячейки Типы таблиц Объектсвойство Объектобъект Двоичная матрица