LINUX.ORG.RU

структура данных


0

0

Подскажите как лучше реализовать следующую задачу(методы и может быть готовые библиотеки).

Есть множество объектов, у объектов есть различные свойства. Объекты зависят друг от друга. Например, объект А зависи от Б и С, также Д зависит от Б, всвою очередь Б зависит от Е.

Необходимо получать дерево зависимости (а также дерево зависимых) для любого объекта.

В теории програмирования не силен, но реляционная БД выглядит тут слегка накладно? что еще можно применить?

★★★

представить жто все как направленный граф. ну а хранить - несколько вариантов: таблица смежностей, таблица инциндентности, список ребер

ono
()
Ответ на: комментарий от ono

где объекты это вершины, а зависимости - ребра

ono
()

Две таблицы достаточно:
1) Справочник объектов (id_obj, name_obj, ...)
2) Таблица зависимостей (id_rel, parent_id_obj, child_id_obj)

aydar ★★★★★
()

perl Graph::Directed

all_successors, all_predecessors, topological_sort

dilmah ★★★★★
()

>Необходимо получать дерево зависимости (а также дерево зависимых) для любого объекта.

Это же уже есть, cronos.ru, зачем повторять уже готовое?

Karapuz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.