Я пытаюсь перечислить все возможные DAG с n
вершинами. Я знаю, что их много, и я предполагаю, что n
очень маленький (от 3 до 5). Мне было интересно, есть ли способ их перечислить. Мое начальное решение - создать их по количеству ребер m
. Рассматривая структуры с 0 ребрами, то те с 1 ... и т. Д. Случаи m=0
или m=n(n-1)/2
являются исследованиями скважин (1 и n!
соответственно). Однако мне непонятно, сколько DAG существует с краями 1<m<n(n-1)/2
.Создание всех возможных направленных ациклических графов
Обновление: Как некоторые пользователи считают это широкой темой, я попытаюсь сузить ее до создания неориентированных графов. Поскольку для заданного ненаправленного графа G
с границами m
существуют 2^|m|
ориентации, и я применил метод для этого, проверяя ацикличность. Вопрос по-другому: Как сгенерировать все возможные неориентированные графики для n
вершин?
downvoters: пожалуйста, посоветуйте мне, как это сделать более конкретным! – Xline
Это больше похоже на проблему с математикой, чем на проблему с кодированием. – immibis
@immibis IT - проблема кодирования. Независимо от того, сколько DAG существует, проблема заключается в том, как сгенерировать их в коде. – Xline