筛选相关文档的算法

时间:2017-05-05 04:15:22

标签: c++ algorithm

我有两个unordered_map哈希表 一个是map1 unordered_map<user_id, set<doc_id> >,其中包含大约300万个项目并存储用户已阅读的所有文档 一个是map2 unordered_map<user_id, map<user_id, relevant_score> >,其中包含大约100万个项目,并存储用户的相关用户及其相关分数。
现在我想获得map3 unorderd_map<user_id, map<doc_id, relevant_score> >。 对于doc_id中的每个map3,它是从map2map1计算出来的。例如
map1101 =&gt; set{001, 002, 003}
102 =&gt; set{002, 003, 004}
map2100 =&gt; map{(101, 0.5), (102, 0.6)}然后 map3将为100 =&gt; map{(002, (0.5 + 0.6) / 2 = 0.55), (003, 0.55)}因为
002003已由多个用户阅读,因此会插入map3。对于这种情况有什么好的算法或者写一个有效的算法吗?

0 个答案:

没有答案