lec16
.pdfДинамические структуры данных
(продолжение).
Списки. Пример программы обработки списков.
Рассмотрим задачу: В памяти ЭВМ необходимо хранить сведения о сотрудниках некоторого учреждения и иметь возможность выдавать справки по личному составу, а так же корректировать сохраняемые данные при изменении сведений. Таким образом нужна несложная база данных о сотрудниках. Для каждого сотрудника должно быть указано:
Постановка задачи.
Сведения о сотрудниках для данной задачи определим с помощью двунаправленной автореферентной структуры:
Схема двунаправленного связного списка, состоящего из 3-х элементов:
Технические решения.
На рис. изображен массив структур, содержащий сведения о сотрудниках. Указатели на 1-й и последний элемент получают значения равные NULL. В списке 2 свободных элемента.
Схема поясняет процесс удаления элемента из списка занятых элементов. Был удален элемент номер 2. Физически он остается на месте, но выходит после удаления в другой список (свободных элементов), т.к. указатели на предыдущий и последующий элементы получили другие значения.
Функции по обсуживанию базы:
Основная функция.