考虑一个在每个节点上而不是两个节点之间具有权重的图。 因此,前往节点的成本将是该节点的重量。

1-我们如何表示该图?

2-对于这种类型的图是否有最小生成路径算法(或者我们可以修改现有算法)吗?

例如,考虑一个矩阵。 从某个数到另一个数,哪条路径会产生最小和? (请牢记必须对图形进行定向)

#1楼 票数:0

  1. 如果不想调整现有算法并使用面向边缘的方法,则可以将节点权重转换为边缘权重。 对于节点v的每个传入边缘,可以将v的权重保存到边缘。 多数民众赞成在表示形式。

  2. 很好,采用1.的方法,现在可以很容易地通过众所周知的算法(例如MST)来实现。

您也可以按需表示图形,并在节点处保持权重。 该算法根本不使用Weight w = edge.weight(); 它会简单地使用Weight w = edge.target().weight() 无需进行大的调整。

如果必须使用邻接矩阵,则需要第二个具有节点权重的数组,并且邻接矩阵中的数字仅为0(无边)或1(无边)。

希望能有所帮助

  ask by Khaled translate from so

未解决问题?本站智能推荐:

1回复

NetworkxGraph图节点权重

我想为无向图中的每个节点分配节点权重。 我使用以下MWE: 然后,我得到了以下形式的图形: 我想在节点旁边绘制一个以新颜色给出的权重的图形,例如: 实现此目的最简单的方法是什么? 在SO上,材料主要用于边缘权重,或用于更改节点权重的节点大小。
1回复

基于节点和边缘权重的图分区

我有一个图形G =(V,E),边缘和节点都具有权重。 我想对该图进行分区以创建大小相等的分区。 分区大小的定义为sum(vi)-sum(ej),其中vi是该分区内的一个节点,而ej是该分区内两个节点之间的边。 在我的问题中,图形非常密集(几乎完整)。 是否有任何近似算法? 这在某种程
3回复

代表节点数目未知的图?

在最近的几天里,我无法在不事先知道图形中顶点数的情况下考虑如何将文本文件中的给定图形表示为邻接矩阵。 输入文件具有定义为“字符串”的顶点和代表两个顶点之间的边的一对连续线。 例如: 在上面的示例中,VertexA-> VertexB和VertexC-> VertexD有优势
1回复

基于网络X中节点权重的图的“凝聚”聚类?

我有一个非常大的连接图(数百万个节点)。 每条边都有一个权重 - 确定连接节点的接近程度。 我想在图中找到“簇”(非常接近的节点集)。 例如,如果节点是美国的每个城市,边缘是城市之间的距离 - 集群可能是{达拉斯,休斯顿,沃斯堡}和{​​纽约,布里奇波特,泽西城,特伦顿}。 群集不必具
1回复

根据节点权重将图分成最大的两个子图

给定此网络,基本上是一个径向网络,每个节点上都有权重: 我试图将图G分为两个最大的子图,其中大小由节点的权重定义。 拆分将消除边(1,3),并产生两个带有节点[0,1,2]和[3,4]的子图。 任何帮助表示赞赏!
1回复

找到图的最小权重

我正在尝试制作一个使用Kruskal算法计算最小跨度权重的程序,我已使用其weghts对边缘进行了升序排序,并将其放入2d列表中。 然后我写了一种方法,使用sortededge获得最小的权重,取样品, sortededge = [['1', '2', '1'], ['5', '6', '1']
1回复

基于边权重的图聚类

我使用 networkx 构建了一个图,这是一个社交网络,以人为节点,以消息频率为边权重。 我想把这个网络分成不同的人群。 经常互相发信息的人往往在同一个组中。 我该怎么做? 我应该使用哪种聚类算法? 另外,如何将分组可视化为树状图树? 提前致谢! :D PS: 我已经尝试过使用 python-l
3回复

最小跨度图-负权重和正权重

我无法理解MST是否为树。 假设给定一个图G =(V,E),则连接V中所有顶点且总权重最小的边T⊆E的任何子集T必须是树,或者在以下情况下可以是其他子图:负重。 -所有边缘的重量均为正。 我认为对于某些可能具有负权重的边,它必须是一棵树,对于所有边缘均具有正权重的边,它可以是其他子图。