我想根据它们的散列索引一系列奇异值或结构/类(意味着一次散列多个值)。
我已经对哈希函数进行了编码,因此为任何值或结构或类提供摘要都没有问题,问题是:
- C++ 中是否真正支持基于散列的数据结构?我的意思是,如果有一个更好的替代方法来替代
std::map
例如的琐碎使用,以及为此设计的具有超过 2 个字段的容器 (我还没有决定我的数据结构中真正需要多少个字段)。 - 由于我计划轻松达到 10^5 条记录,因此管理零散的数据结构对我来说很重要的是避免直接处理内存中的巨大数据结构并分配结构的无用部分。
- 如果我想将此结构保存在磁盘上,序列化是唯一的选择吗?
假设我的哈希函数是hash::digest()
我将欣赏对实际代码的最小参考,并提供有关使用适当数据结构的示例。
谢谢。
编辑:
我想避免无序的数据结构,因为:
- 错误的分支预测
- 因为它们没有被排序,所以它们不能以有效的方式被分割
- 我的主要关注点是管理这种结构及其碎片化。