Множественные ссылки на порожденные элементы. Пусть исходная сеть соответствует рисунку 12

 

Пусть исходная сеть соответствует рисунку 12. Тогда ее описание задано в таблицах 68 – 72:

 

Таблица 68 Таблица 69

№ п/п Шифр учебной группы Ссылки (табл.70)   № п/п Дисциплина Ссылки (табл.72)
01-АС   Информатика 3,4
01-ИЭ 1,2,5   Программирование 1,2
02-ВТ   Физика

 

Таблица 70 Таблица 71 Таблица 72

№ п/п ФИО студента Ссылки (табл.72)   № п/п Оценка Ссылки (табл.72)   № п/п Э
Иванов И.И.   1,3   Э1
Сидоров С.С.   2,5   Э2
Петров П.П.     Э3
Федоров Ф.Ф.           Э4
Яковлев Я.Я.           Э5

 

Совокупность таблиц 68 и 70 описывает состав учебных групп (рисунок 9), таблица 69 определяет список дисциплин, экзамены по которым сдаются в сессию (рисунок 10), таблица 71 задает состав оценок (т.е. представляет рисунок 11), полученных во время сессии, а таблица 72 определяет только связь между студентами, дисциплинами и полученными на экзаменах оценками.

 

Рассмотрим решение задач просмотра элементов сети.

Пример 30. Пусть требуется определить, получены ли тройки по Информатике, т.е. qпросмотр = (Оценка =3, Дисциплина= Информатика), где Кдоступ = 3, Информатика. Сеть задана таблицами 68 – 72.

Решение задачи:

1. по таблице 69 определяется элемент с ключом Информатика (задача аналогична поиску по линейному списку по первичному ключу) – это элемент с номером 1;

2. по ссылкам для первого элемента таблицы 69 (поле Ссылки) выбираем порожденные элементы. Они находятся в таблице 72 с номерами 3 и 4. Получаем список {3, 4};

3. по таблице 71 обращаемся последовательно к элементу со значением 3 - это третий элемент. Для него список ссылок из графы Ссылки равен {3};

4. строим пересечение множеств из шагов 2) и 3): {3, 4} ∩ {3} = 3. Поскольку получено непустое множество, формируем утвердительный ответ на поставленный вопрос. Алгоритм заканчивает работу.

 

Пример 31. Пусть требуется определить, какую оценку по Информатике получил Иванов И.И., т.е. qпросмотр = (ФИО студента =Иванов И.И., Дисциплина =Информатика, Оценка), где Кдоступ = Иванов И.И., Информатика. Сеть задана таблицами 68 – 72.

Решение задачи:

1. по таблице 69 определяется элемент с ключом Информатика – это элемент с номером 1;

2. по ссылкам для первого элемента таблицы 69 (поле Ссылки) выбираем порожденные элементы. Они находятся в таблице 72 с номерами 3 и 4. Получаем список {3, 4};

3. по таблице 70 определяем элемент с ключом Иванов И.И. Его номер – 1;

4. по ссылкам для этого элемента таблицы 70 (поле Ссылки) выбираем порожденные элементы – это элемент 3 из таблицы 72. Получаем список {3};

5. в таблице 71 по полю Ссылки объединяем списки ссылок. Получаем множество {1, 2, 3, 4, 5};

6. строим пересечение всех трех полученных множеств: {3, 4}∩{3}∩{1, 2, 3, 4, 5} = 3. Полученной ссылке соответствует оценка 5 в таблице 71, таким образом, результат решения задачи – пятерка. Алгоритм заканчивает работу.

 

Пример 32. Пусть требуется определить, какие оценки получены по Информатике, т.е. qпросмотр = (Дисциплина =Информатика, Оценка), где Кдоступ = Информатика. Сеть задана таблицами 68 – 72.

Решение задачи:

1. по таблице 69 определяется элемент с ключом Информатика – это элемент с номером 1;

2. по ссылкам для первого элемента таблицы 69 (поле Ссылки) выбираем порожденные элементы. Они находятся в таблице 72 с номерами 3 и 4. Получаем множество {3, 4};

3. в таблице 71 по полю Ссылки объединяем списки ссылок. Получаем множество {1, 2, 3, 4, 5};

4. строим пересечение полученных множеств: {3, 4}∩{1, 2, 3, 4, 5} = {3, 4}. Полученному списку ссылок соответствуют оценки 5 и 3 в таблице 71, что и является результатом решения задачи. Алгоритм заканчивает работу.

 

Рассмотрим, как решается задача добавления нового элемента.

 

Пример 33. Пусть в сеть рисунка 12 требуется поместить элемент со структурой:

 

ФИО студента Шифр учебной группы Дисциплина Оценка
Петров П.П. 02-ВТ Информатика

 

т.е. qдобавление = (ФИО студента =Петров П.П., Шифр учебной группы= 02-ВТ, Дисциплина = Информатика, Оценка = 5), где Кдоступ = Петров П.П., 02-ВТ, Информатика, 5.

После размещения элемента в сети она примет вид рисунка 13: новый элемент Э6 показывает связь студента Петрова П.П. с оценкой 5 по информатике (связи выделены жирными стрелками):

 

Рисунок 13

 

Новой сети соответствует описание, помещенное в таблицы 68, 69 (так описан состав учебных групп, список дисциплин, которые не поменялись), а также модифицированные таблицы 70 – 72, представленные в таблицах 73 – 75 (новые и измененные данные показаны заливкой):

 

Таблица 73 Таблица 74 Таблица 75

№ п/п ФИО студента Ссылки (табл.75)   № п/п Оценка Ссылки (табл.75)   № п/п Э
Иванов И.И.   1,3,6   Э1
Сидоров С.С.   2,5   Э2
Петров П.П. 2,6     Э3
Федоров Ф.Ф.           Э4
Яковлев Я.Я.           Э5
                Э6







Дата добавления: 2015-03-03; просмотров: 862;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.011 сек.