详解布隆过滤器

一、引言假设我们想要开发一个邮件系统,那么如何实现垃圾邮件的过滤呢。 最简单的办法就是把确定为是垃圾邮件的地址都保存起来,存入黑名单中。当用户接收到黑名单地址的邮件时,直接将邮件归类到垃圾箱中。 垃圾邮件的地址数量可能是巨大的,因此除了被存储在数据库中,程序实际使用的时候一定是需要借助缓存的。不论是使用本地缓存还是内存缓存,当数据量达到一定数量级时,都是不太合适的。 咳咳,如果你的数量级连百万...

如何判断一个元素在亿级数据中是否存在

前言最近有朋友问我这么一个面试题目: 现在有一个非常庞大的数据,假设全是 int 类型。现在我给你一个数,你需要告诉我它是否存在其中(尽量高效)。 需求其实很清晰,只是要判断一个数据是否存在即可。但这里有一个比较重要的前提:非常庞大的数据。 常规实现先不考虑这个条件,我们脑海中出现的第一种方案是什么? 我想大多数想到的都是用 HashMap 来存放数据,因为它的写入查询的效率都比较高。写入和判...
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×