有人可以告诉我我必须制作什么样的邻接列表才能构建具有适当节点和链接的图吗?我必须制作一个树结构来定义 ajdacency 列表?或者还有其他方法吗?
现在对矩阵不感兴趣,谢谢。
例如,我可以制作一个数组列表,其中每个位置内的其他arralists到边缘的其他节点都具有类似的内容:
nodes {a,b,c}, connection {{a-c},{b,c}}
所以我有数组列表或我的邻接列表[a[c],b[c],c[a,b]]
最佳答案
邻接表仅表示哪些节点相互连接。
如果您的图表具有以下节点 1 -4,则相邻矩阵将如下所示。 “1”代表节点之间的连接。
1 2 3 4
1 1 1 1 1
2 1 0 0 0
3 0 1 0 1
4 0 1 1 0
列表看起来像这样。 -> 代表链接
1 -> 1 -> 2 -> 3 -> 4
2 -> 1
3 -> 2 -> 4
4 -> 2 -> 3
您是否考虑过在数组中使用上面指定的链表,以便数组包含节点 1 - 4。然后您可以使用一个成员变量来表示与另一个节点的连接,或者在每个元素中使用一个单独的数组列表数组的。
关于c# - 图构建的邻接表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10740894/