基于连通性重新调整无向随机图的邻接矩阵

时间:2015-12-03 06:54:56

标签: matlab graph adjacency-matrix

我有一个无向随机图的ABCD PQRS XYZ x n邻接矩阵n,因此A可以是 0 1 。如果Aij 1 ,则表示 Aij i 节点之间存在边缘。如果 0 ,则意味着它们之间没有边缘。

我想根据顶点的程度重新调整矩阵。所有顶点的度数小于等于 j ,我想把它们放在最后。假设有 k 这样的顶点,所以我的新邻接矩阵的最后 m 行和列将代表这些顶点。

我想在MATLAB中实现它。我不知道如何有效地解决它。只有一个人认为我知道如何找到这样的顶点。

m

感谢任何帮助。

1 个答案:

答案 0 :(得分:4)

由于图表是无向的,因此邻接矩阵A是对称的。正如您已经指出的那样,您可以通过对A的行(或列)进行求和来分辨顶点的程度:

deg = sum(A, 2);

现在你可以sort根据他们的学位

来设置顶点
[sd si] = sort(deg, 'decrease'); %// sort in a decreasing order

您可以使用已排序的索引(si)重新排列A

A = A(si,si);

请注意,您必须A的行和列应用相同的排列,否则......

既然您的图表按顶点的顺序排序,那么较小程度的一次将自然地位于A的末尾。