【发布时间】:2014-11-11 17:29:15
【问题描述】:
我有一个图像补丁数据库,即 300*300 图像,每个补丁大小为 60*60。因此给了我一个 5*5 的网格。我想针对每个补丁存储一些信息。由于我的数据库可能包含数百万张图像,因此我想使用 unordered_map 以便轻松找到补丁。
我的patch信息由imgId、patch的x_position和patch的y_position组成(都是整数)。我对 unordered_map 没有太多经验。但是通过一些教程,我意识到我将不得不使用自己的哈希函数。任何人都可以提出一些有效的方法来使用适当的哈希函数将上述信息存储在 unordered_map 中。
【问题讨论】:
-
您的哈希是基于您提供的识别句柄,还是基于数据库中的基础数据?
-
使用
std::hash<int>并查看stackoverflow.com/questions/2590677/… -
@Deduplicator 我需要根据 imgId,x 和 y 位置查找值。那就是它们的组合是主键。
标签: c++ hash hashtable unordered-map