边缘连通图

时间:2013-02-25 01:29:57

标签: c++ algorithm graph matrix

我需要帮助解决3边缘连接问题的算法的伪代码: 输入:邻接矩阵格式的图G

output:如果对于每对顶点v,对于G的w元素,存在从v到w的长度最多为3的路径

任何想法?这就是我到目前为止所拥有的。

const int WIDTH = 10;
const HIGHT =10;
Int arrayMatrix [WIDTH] [HIGHT];

for (int i =0; i< WIDTH; i++)
{
for (int j =0; j<HIGHT; j++)
{
int countEdges =0;
countEdges = countEdges +arrayMatrix [i];
}
if countEdges<=3
cout << "True for 3-edge connectivity problem" << endl;
else 
cout <<"Not found" << enld;

1 个答案:

答案 0 :(得分:0)

您可以使用类似于Warshall-Floyd算法的技术来计算G ^ 3,但是对于矩阵乘法,您可以进行以下操作

(X * Y)ij = OR [全k](Xik和Ykj)。

现在计算(G * G)* G(使用输入邻接矩阵)。

如果结果矩阵仅包含'true'元素,则返回true。