表的最佳数据结构

时间:2017-04-28 18:43:08

标签: javascript angular dictionary typescript data-structures

我正在尝试找到用于可视化此UI的最佳数据结构: enter image description here

我正在使用带有Angular的javascript / typescript,我应该可以添加/删除/更新项目。另请注意,我将在每个单元格中包含大量行和列以及最多100个非重复项目。 到目前为止,我正在考虑这种数据结构:

var data = new Map<string, Map<string, Set<Item>>>();

其中字符串是rowKeyN,columnKeyN和Set包含每个单元格中的项目。

这种数据结构看起来有点复杂,但在性能方面却是最好的。 你怎么看? 提前谢谢。

1 个答案:

答案 0 :(得分:-1)

遇到这个问题-您应该查看Guava的(对于Java)表表示形式-在最后一种情况下您将获得一个列表

see more details here for Guava's table

但简而言之: 取自文档:

Table<Vertex, Vertex, Double> weightedGraph = HashBasedTable.create();
weightedGraph.put(v1, v2, 4);
weightedGraph.put(v1, v3, 20);
weightedGraph.put(v2, v3, 5);

weightedGraph.row(v1); // returns a Map mapping v2 to 4, v3 to 20
weightedGraph.column(v3); // returns a Map mapping v1 to 20, v2 to 5

您的情况应该是Table<Vertex,Vertex,Array>

我是在这里尝试搜索类似上述内容的Typescript的-我还没有找到它-至今-如果有人知道这样的实现-让我知道