Java中的二维列表

有没有办法将Java中的列表处理为二维?

情况:
我有一个包含节点,边和每边重量的图表.现在我需要一个数据结构来存储每个节点:
a)其邻居
b)每个neigbour的边缘重量

首先,我想到创建一个带有标识符的新类“节点”和类似二维数组的东西来存储邻居标识符和边缘权重.但是没有给出每个节点的邻居数量,并且可能在运行时期间动态增加.因此,我认为二维数组不是这里的方式.

我认为在类“节点”中可以有一个列表,如:

List

但显然这仅处理邻居节点 – 而不是边缘的权重.

是否有人提示如何构建这样一个“图形”,其中每个节点都存储了邻居的识别符和相应的边缘权重?

感谢您阅读:-)

最佳答案
最直接的是使用HashMap:

    class Edge {
// represents edge with destination node and it's weight
        private final Node node;
        private final int weight;

        Edge(Node node,int weight) {
            this.node = node;
            this.weight = weight;
        }

    }

// represents map which holds all outgoing edges keyed by source nodes.
    Map

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...