3
我有一个图的邻接权重矩阵。我想调用matlabbgl libaray的bellman ford算法。如何将矩阵转换为稀疏格式?从完全转换为稀疏矩阵
我有一个图的邻接权重矩阵。我想调用matlabbgl libaray的bellman ford算法。如何将矩阵转换为稀疏格式?从完全转换为稀疏矩阵
完全转换到稀疏
您可以使用稀疏函数带一个参数:一个完整的矩阵转换为稀疏存储。
S = sparse(A)
例如
A = [ 0 0 0 5
0 2 0 0
1 3 0 0
0 0 4 0];
S = sparse(A)
产生
S =
(3,1) 1
(2,2) 2
(3,2) 3
(4,3) 4
(1,4) 5
打印输出列出S的非零元素,连同它们的行和列索引。元素按列排序,反映内部数据结构。 如果矩阵顺序不是太大,可以使用全功能将稀疏矩阵转换为完全存储。例如A = full(S)反转示例转换。 将全矩阵转换为稀疏存储不是生成稀疏矩阵的最常见方式。如果矩阵的顺序足够小以至于完全存储成为可能,那么转换为稀疏存储很少节省大量成本。
可能对它调用[sparse](http://www.mathworks.com/help/techdoc/ref/sparse.html)? – oleksii 2011-06-14 11:48:16
如果您发现它们有用(请参阅此处有一个打勾)并使用upvotes,则应接受您的问题的答案。它会帮助你获得更多答案。 – Rishabh 2011-06-14 11:49:58