gpt4 book ai didi

python - 按连接对节点图进行排序

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:05:12 26 4
gpt4 key购买 nike

我有一个如下图所示的节点图

enter image description here

我想按级别对节点进行排序。所以像

[8, 4, 5, 9, 3, 1, 2, 7 , 6, 10]

当我构建节点和连接时,它们可以按任何顺序排列。喜欢

class Element:
def __init__(self, name):
self.name = name

class ElementConnection:
def __init__(self, element_source, element_dest):
self.element_source = element_source
self.element_dest = element_dest



element5 = Element("Element5")
element3 = Element("Element3")
element1 = Element("Element1")
element2 = Element("Element2")
element8 = Element("Element8")
element9 = Element("Element9")
element7 = Element("Element7")
element4 = Element("Element4")
element10 = Element("Element10")

elements = [element5, element3, element1, element2, element8, element10, element9, element7, element4]

connections = [
ElementConnection(element8, element5),
ElementConnection(element4, element3),
ElementConnection(element9, element2),
ElementConnection(element9, element7),
ElementConnection(element5, element7),
ElementConnection(element4, element9),
ElementConnection(element2, element6),
ElementConnection(element3, element1),
ElementConnection(element6, element10),
ElementConnection(element1, element10),
]

所以我想使用连接列表对元素列表进行排序。有实现此目标的标准方法吗?

谢谢

最佳答案

我想你可以考虑breadth first search图的算法。它不是关于任何类型的“排序”,而是您可以获得所需的切片。您可以通过上面的链接获得该算法的描述(它是树的示例)。

关于python - 按连接对节点图进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44539588/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com