【发布时间】:2018-04-22 01:47:50
【问题描述】:
我想在给定 n 行的情况下创建一个邻接矩阵,这些行表示图的某些节点之间的部分连接。例如,由于每条线代表一个集团,线A-B; B-C; C-D; A-E-D 形成如下图。
我的第一种方法是使用for loop 读取每一行,对于每一行我使用另一个for loop 来获取其中的每个节点,最后,使用另一个for loop 检查其余节点是否已经在分析的节点的adyacence列表中,如果没有,我添加它。所有这些都给出了 O(n^3) 的复杂度。是否有另一种方法可以降低复杂性?是否有可能用 O(n) 完成?
【问题讨论】:
-
输入是什么? IE。现在如何定义集团连接?
-
输入是来自多行文本框的字符串,每一行都是一个集团。
-
如果您可以以线性方式读取您的派系,则只需先创建 (nCliques x nClicques) 矩阵,读取每一行并填写矩阵位置。
标签: graph adjacency-matrix adjacency-list clique clique-problem