Java中的二维列表
有没有一种方法可以将Java中的列表处理为二维的
情况: 我有一个包含节点、边和每边权重的图。现在,我需要为每个节点存储一个数据结构: a) 它的邻居 b) 每个邻居的边缘重量
首先,我想创建一个新的类“node”,其中包含一个标识符和一个类似于二维数组的东西,用于存储相邻标识符和边权重。但每个节点的邻居数并没有给出,并且在运行期间可能会动态增加。因此,我认为二维数组不是解决这个问题的方法
我认为在类“节点”中可以有如下列表:
List<node> neighbours = new ArrayList<node>();
但显然,这只处理相邻节点,而不是它们边的权重
有人知道如何构造这样一个“图”,其中每个节点都存储了邻居的标识符和相应的边权重吗
感谢阅读:-)
# 1 楼答案
最直接的方法是使用
HashMap
:# 2 楼答案
你可以这样做:
其中“连接”定义为: