在MATLAB

时间:2016-03-19 15:45:54

标签: matlab matrix sparse-matrix adjacency-matrix

我有一个包含以下有向图的文件:

1 2
2 4
3 1
2 3

每个数字都被视为图表中的一个节点 第一列中的每个节点在第二列中具有到其前节点的转发边缘 我想为这个图制作一个邻接矩阵 我应该使用稀疏矩阵 这是问题:
正如您在图中看到的那样,节点4没有边缘到其他节点,因此我的稀疏邻接矩阵将不是正方形。

这是制作矩阵的代码:

adj = sparse(Graph(:,1),Graph(:,2),1);

如何在此矩阵中存储第4行?

1 个答案:

答案 0 :(得分:2)

设置所需的尺寸:

n=max(Graph(:));
adj = sparse(Graph(:,1),Graph(:,2),1,n,n);