【发布时间】:2013-11-18 21:54:06
【问题描述】:
基本上我需要在内存中存储一组字符串,并且能够获取与一个字符串关联的唯一整数以及与一个整数关联的字符串。
所以看起来我需要一些实现 Map
我正在考虑的一个选项是存储一个 Trie,其中叶节点包含整数和一个指向叶节点的指针数组,按整数值排序。
是否有更紧凑的方式将其存储在内存中,同时仍具有良好的检索性能?
【问题讨论】:
-
你能更好地解释一下“我不需要决定整数,只要它们是唯一的”是什么意思
-
当我向字典中添加新字符串时,可以为我生成整数,就像数据库生成主键一样。 API 的客户端在添加新字符串时不需要提供自己的整数。
-
您应该查看 HAT-trie。 HAT-trie 是一种 Burst trie(对于存储叶节点非常有效),设计为具有缓存意识。请参阅此 pdf:crpit.com/confpapers/CRPITV62Askitis.pdf 另外,可能重复:stackoverflow.com/questions/3986158/…
标签: performance optimization data-structures compression