Создание Stati c Направленный граф в Юлии - PullRequest
1 голос
/ 12 февраля 2020

Как я могу создать Stati c Directed Graph из массива кортежей в Julia без необходимости сначала создавать Simple Directed Graph. Пример списка ребер у меня есть [(1,2),(2,3),(3,4)]. Документация StaticGraphs.jl ограничена.

1 Ответ

2 голосов
/ 13 февраля 2020

Есть способ сделать это, но он требует, чтобы ребра и их реверсы уже были отсортированы по двум векторам. Предположим, у вас есть ориентированный граф путей 1 -> 2 -> 3 -> 4:

fwd = [(1, 2), (2, 3), (3, 4)]  # these are your forward edges, sorted
rev = [(2, 1), (3, 2), (4, 3)]  # these are the reverse of the forward edges, sorted
# also, sort(reverse.(fwd)) will do this easily.

g = StaticDiGraph(4, fwd, rev)  # number of vertices is the first argument

проверка:

julia> h = StaticDiGraph(path_digraph(4))
{4, 3} directed simple static {UInt8, UInt8} graph

julia> g == h
true
...