algorithm - 用于与多个任意值进行比较的存储算法

标签 algorithm memory-management comparison

我目前正在编写一个消息队列,它需要我保留服务器已经看到的消息的历史记录。我为每条消息都有唯一的、固定大小的 ID 字段,这使得它变得微不足道。然而,我担心存储每条消息的 ID 的长期前景,以及随后比较它们之间的延迟。我当前的 ID 长度为 160 位(是的,SHA1)。

我最想知道的是是否有一种方法可以将多个 ID 压缩到一个字段中以节省内存,如果有,该算法的 false-pos 和 false-neg 率是多少消息压缩的功能。理想情况下,我并不真正关心假阴性率,但非常关心假阳性,这使得像 agrep 这样的比较相当无聊。

最佳答案

这个问题实际上并没有包含足够的信息来给出明确的答案,但您可能想看看 bloom filters .

关于algorithm - 用于与多个任意值进行比较的存储算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16752784/

相关文章:

c++ - 是否有任何 API 或方法可以防止对动态分配的内存进行读访问(和写)?

c - 为什么 malloc(0) 在 Windows 中返回一个非空地址?

android - Android、iOS 和黑莓操作系统之间的主要区别是什么?

java - java comparable上的排序算法问题

algorithm - 递推的复杂度 T(n)=T(n/2T(n/2)+n^2?

algorithm - 最小化解决池中债务的交易成本

java - Java 代码中的结果格式不正确

iPhone内存管理

python - 如何获取多个时期的交集

javascript - 将数字与运算符连接起来以在 javascript 中进行比较