我有一个 Java 中的图形实现,它将所有节点存储在一个列表中,并将所有边存储在一个列表中。图可以是有向的和无向的。
现在我搜索一个算法来测试两个给定的节点 a,b 是否连接
public class Graph {
private List<Node> nodes;
private List<Edge> edges;
boolean hasConnection(Node a, Node b) {
// TODO implement some Algorithm
}
}
该算法可能很幼稚,可能具有很高的复杂性。我不想使用 BFS 或 DFS,但是比那些算法更糟糕的东西。
是否有天真的或蛮力变体?