logo
САПР - лекции

Гнездовое хранение структуры

1.8.2.Гнездовое хранение структуры.

При этом способе хранения структуры каждая вершина задается гнездом следующего вида:

Оi

А1

A2

где:

Оi - номер объекта;

А1 - первый адрес перехода к следующей вершине;

А2 - второй адрес перехода к следующей вершине.

Гнездо построено в предположении, что от каждой вершины отходит не больше двух дуг. Пусть структура операции выражена следующим образом:

Тогда хранение структуры с помощью гнезд можно выразить следующим способом.

Каждое гнездо состоит из 3х слов. Общий объем занимаемой памяти составит

V=3n

слов

Матрица смежности с битовым заданием строк и хранение гнездами занимают одинаковый объем памяти, однако гнездовой способ не имеет ограничения n <16 или n <32 и, в тоже время, является более гибким. Например, для удаления перехода Р5 нужно уничтожить связь Р4 Р5. Для этого необходимо лишь в гнезде с адресом А3 убрать адрес А4 и поставить * (отсутствие адреса). В то время как в 1-ом способе для удаления лишнего перехода понадобиться проделать ряд операций над битовыми строками.

Сложность использования гнездового способа возникает, когда из вершины графа структуры выходит больше двух вершин. В этом случае необходимо либо применять гнезда с большим количеством адресов, либо использовать псевдопереходы. Пример.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4