Это следующий вопрос к Комбинаторика в Python
У меня есть дерево или направленный ациклический Граф, если вы сделаете это со структурой как:
Где r - корневые узлы, p - родительские узлы, c - дочерние узлы, а b - гипотетические ветви. Корневые узлы не связаны напрямую с родительскими узлами, это только ссылка.
Я заинтересован в поиске всех комбинаций ветвей при ограничениях:
В этом примере возможны только две допустимые комбинации при ограничениях:
combo[0] = [b[0], b[1], b[2], b[3]]
combo[1] = [b[0], b[1], b[2], b[4]]
Структура данных такая, как b - это список объектов ветвления, которые имеют свойства r, c и p, например:
b[3].r = 1
b[3].p = 3
b[3].c = 2