小编And*_*jia的帖子

从元组列表生成邻接矩阵的更优雅方法

假设我们从一个由元组列表表示的“友谊”图开始,

friendships = [(0, 1), (0, 2), (1, 2), (1, 3), (2,
3), (3, 4),(4, 5), (5, 6), (5, 7), (6, 8), (7, 8), (8, 9)]
Run Code Online (Sandbox Code Playgroud)

其中元素0是1的朋友(因此1是0的朋友)。

我想以一种始终适用于这种元组表示形式的方式从头构造邻接矩阵。

我有以下(排斥)Python代码:

friendships = [(0, 1), (0, 2), (1, 2), (1, 3), (2,
3), (3, 4),(4, 5), (5, 6), (5, 7), (6, 8), (7, 8), (8, 9)]
Run Code Online (Sandbox Code Playgroud)

我知道它效率低下而且非常难看。有没有更聪明的方法来解决这个问题?我上面给出的示例列表的输出应为

[[0, 1, 1, 0, 0, 0, 0, 0, 0, 0],
 [1, 0, 1, 1, 0, 0, 0, 0, 0, 0],
 [1, 1, 0, …
Run Code Online (Sandbox Code Playgroud)

python graph function adjacency-matrix

4
推荐指数
1
解决办法
329
查看次数

标签 统计

adjacency-matrix ×1

function ×1

graph ×1

python ×1