我有一个项目,它从外部文件中读取一些语句,并使用邻接矩阵将它们存储到加权边有向图中。例如:A有B、C、D,B加C、A、D等。一开始程序从文件中读取语句时,在主类中分别存入两个ArrayList,一个用于节点,一个用于节点。一个用于边缘。经过一些操作后,全部添加到图中。
我现在遇到的问题是如何检查图中的节点是否已连接,如果是,如何在主类中显示它们及其权重。我听说我可以使用广度优先搜索或深度优先搜索,但不知道如何使用加权边以及由字符串而不是整数构成的节点和边来实现它们。
最佳答案
BFS 的加权版本称为 Dijkstra's algorithm .它应该找到从原点到所有其他顶点的最短路径。伪代码在维基百科页面中给出,您可以从给定的伪代码中实现它,这样会容易得多。
关于java - 如何使用邻接矩阵查找节点是否连接在边加权图上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29745543/