1

有谁知道是否有一种方法可以对 Matlab 中稀疏数组中的行列位置进行简单的重新排序?

我有一个稀疏数组,它对应于我要分析的图的邻接矩阵,我想通过一些计算的度量来重新排序图中的顶点(同时保留构建映射的方式)

有没有人对如何做到这一点有任何建议?我是 Matlab 的新手,还不完全熟悉它用于矩阵操作的所有工具。

4

1 回答 1

0

使用稀疏矩阵,您分配条目值的方式与使用普通矩阵相同。例如:

>> a = sparse(1:2, 3:4, [1 1], 4, 5, 7)

a =

   (1,3)        1
   (2,4)        1

a(1,3) = 0; a(1,2) = 1; % move the "1" from (1,3) to (1,2)

>> a

a =

   (1,2)        1
   (2,4)        1

您还可以分配整列或整行。例如,这交换了第 2 列和第 3 列:

aux = a(:,3);
a(:,3) = a(:,2);
a(:,2) = aux;
于 2013-10-14T15:27:39.193 回答