【发布时间】:2017-07-18 09:43:11
【问题描述】:
有一个巨大的物体,看起来像:
{
"exercise": ["running","walking","gym" ........lots of words],
"eat": ["breakfast","dinner",....... lots of words..],
.
.
.
"lots of keys": [ .... ....]
}
有大量的数据如上所示分类。在遇到像gym 这样的词时,我需要在上面的示例中找到它的类别exercise。由于数据量巨大,双循环的蛮力方法无法很好地解决问题。
这里可以应用什么算法?什么数据结构可以有效解决这个问题?
每个列表中键和项目的数量会逐渐增加,但很容易超过一百万个键和包含项目的列表。
PS:我完全可以将当前结构转换为一些相关的数据结构,然后应用所需的方法
【问题讨论】:
-
定义“大”。也许你应该改用数据库。
-
@str 词表超百万
-
你可以节省 CPU 时间,但它会消耗内存......就像在加载时将你的对象反转为地图。
-
@RobinCamus 不能采用这种方法
标签: javascript node.js algorithm performance data-structures