【问题标题】:Finding cycles in graph results in empty array在图中查找循环会导致空数组
【发布时间】:2019-10-19 14:55:12
【问题描述】:

我正在尝试在有向图中查找所有循环,为此我正在使用网络库。程序正常执行并产生一个空数组。 我不确定网络库是如何工作的,但我的用例图可能不连续。

我已经附上了下面的代码

import networkx as nx


G.add_nodes_from(['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18'])
G.add_edges_from([('1', '2'), ('1', '8'), ('1', '9'), ('1', '10'), ('1', '11'), ('1', '14'), ('1', '15'), ('1', '18'), ('2', '3'), ('2', '8'), ('2', '18'), ('3', '4'), ('3', '7'), ('3', '17'), ('4', '5'), ('4', '6'), ('4', '7'), ('4', '12'), ('4', '13'), ('4', '16'), ('4', '17'), ('5', '6'), ('5', '10'), ('5', '12'), ('6', '7'), ('6', '9'), ('7', '8'), ('8', '9'), ('9', '10'), ('10', '11'), ('11', '12'), ('11', '14'), ('12', '13'), ('13', '14'), ('13', '16'), ('14', '15'), ('15', '16'), ('15', '18'), ('16', '17'), ('17', '18')])

print(list(nx.simple_cycles(G)))

在我的示例中应该有几个周期。

请让我知道我在这里做错了什么。

【问题讨论】:

    标签: python networking graph theory


    【解决方案1】:

    print(list(nx.find_cycle(G, source=节点列表)))

    【讨论】:

    • 我试过了,它给了我找到的第一个周期。我想要图中所有可能的循环
    • 复制您的图表,同时找到循环:将其存储在某处,将其从图表中删除,继续搜索。
    猜你喜欢
    • 1970-01-01
    • 2012-01-12
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 2021-12-20
    • 1970-01-01
    • 2021-05-06
    • 2023-03-18
    相关资源
    最近更新 更多