检查节点是否具有完全连接的邻居
Checking if a node has fully connected neighbours
我有一个图,我想检查一个节点是否有完全连接的邻居。对于具有完全连接的邻居的节点,其所有邻居也必须连接。
因此,对于具有完全连接的邻居的节点,其邻居集必须是给定节点的每个邻居的邻居集的子集。我有以下代码,但是它 returns false
即使给它一个确实有完全连接的邻居的节点,我不明白为什么会这样。
public static boolean isFullyConnectedNeighbours(Node node)
{
Set<Node> neighbours = node.neighbours();
for(Node neighbour : neighbours)
{
if(! neighbour.neighbours().containsAll(neighbours)) return false;
}
return true;
}
对于Node
,neighbours()
returns该节点的邻居集合
是不是每个节点都不是自己的邻居?
例如...
for(Node neighbour : neighbours)
{
for(Node n2 : neighbours) {
if(neighbour == n2) continue;
if(! neighbour.neighbours().contains(n2)) return false;
}
}
...或者什么的
我有一个图,我想检查一个节点是否有完全连接的邻居。对于具有完全连接的邻居的节点,其所有邻居也必须连接。
因此,对于具有完全连接的邻居的节点,其邻居集必须是给定节点的每个邻居的邻居集的子集。我有以下代码,但是它 returns false
即使给它一个确实有完全连接的邻居的节点,我不明白为什么会这样。
public static boolean isFullyConnectedNeighbours(Node node)
{
Set<Node> neighbours = node.neighbours();
for(Node neighbour : neighbours)
{
if(! neighbour.neighbours().containsAll(neighbours)) return false;
}
return true;
}
对于Node
,neighbours()
returns该节点的邻居集合
是不是每个节点都不是自己的邻居?
例如...
for(Node neighbour : neighbours)
{
for(Node n2 : neighbours) {
if(neighbour == n2) continue;
if(! neighbour.neighbours().contains(n2)) return false;
}
}
...或者什么的