Задание для самостоятельной работы
Разработать алгоритмы добавления записи для всех трех случаев
Однако часто бывает необходимо просматривать цепочку подчиненных записей в двух направлениях: прямом и обратном. В этом случае применяют двойные указатели.
В "основном файле" один указатель равен номеру первой записи в цепочке записей "подчиненного файла", а второй - номеру последней записи.
В "подчиненном файле" один указатель равен номеру следующей записи в цепочке, а другой - номеру предыдущей записи в цепочке. Для первой и последней записей в цепочке один из указателей пуст, то есть равен пробелу.
Для нашего примера это выглядит следующим образом:
F1 | |||
Номер записи | Ключ и остальная запись | Указатель на первую запись | Указатель на последнюю запись |
1 | Иванов И. Н ..... | 1 | 5 |
2 | Петров А. А. | 3 | 6 |
3 | Сидоров П. А. | 2 | 2 |
4 | Яковлев В. В. |
F2 | |||
Номер записи | Указатель на предыдущую запись в цепочке | Указатель на следующую запись в цепочке | Содержимое записи |
1 | - | 4 | 4306 Вычислительные сети |
2 | - | - | 4307 Контроль и диагностика |
3 | - | 6 | 4308 Вычислительные сети |
4 | 1 | 5 | 84305 Моделирование |
5 | 4 | - | 4309 Вычислительные сети |
6 | 3 | - | 84405 Техническая диагностика |
7 | - |
181
Один файл ("подчиненный" или "основной") может быть связан с несколькими другими файлами, при этом для каждой связи моделируются свои указатели. Связь двух основных файлов F1 и F2 с одним связующим файлом F3 моделируется на
|
|
F3 | ||
Цепочки для файла F1 | Содержимое записи | Цепочки для файла F2 |
182
178 :: 179 :: 180 :: 181 :: 182 :: Содержание