大数据和空间限制 认识布隆过滤器题目1:不安全网页的黑名单包含100亿个黑名单网页,每个网页的URL最多占用63B。现在想要实现一种网页过滤系统,可以根据网页的URL判断该网页是否在黑名单上,请设计该系统。 只用2GB内存在20亿个整数中找到出现次数最多的数题目2:有一个包含20亿个全是32位整数的大文件,在其中找到出现次数最多的数。 40亿个非负整数中找到没出现的数题目3: 32位无符号整数的范围是0-4294967295,现在有一个正好包含40亿个无符号整数的文件,所以在整个范围中必然有没出现的数。可以使用最多1GB的内存,怎么找到所有没出现过的数?进阶:内存限制为10MB,但是只用找到一个没出现过的数即可。 找到100亿个URL中重复的URL以及搜索词汇topK问题题目4:有一个包含了100亿个URL大文件,假设每个URL占用64B,请找出其中所有重复的URL。补充问题:某搜索公司一天的用户搜索词汇是海量数据的(百亿数量级),请设计一种求出每天最热top100词汇的可行方法。 认识布隆过滤器 题目1:不安全网页的黑名单包含100亿个黑名单网页,每个网页的URL最多占用63B。现在想要实现一种网页过滤系统,可以根据网页的URL判断该网页是否在黑名单上,请设计该系统。 要求: 该系统允许有万分之一的判断失误率。使用的额外空间不要超过30GB。 只用2GB内存在20亿个整数中找到出现次数最多的数 题目2:有一个包含20亿个全是32位整数的大文件,在其中找到出现次数最多的数。 要求: 内存限制为2GB 40亿个非负整数中找到没出现的数 题目3: 32位无符号整数的范围是0-4294967295,现在有一个正好包含40亿个无符号整数的文件,所以在整个范围中必然有没出现的数。可以使用最多1GB的内存,怎么找到所有没出现过的数? 进阶:内存限制为10MB,但是只用找到一个没出现过的数即可。 找到100亿个URL中重复的URL以及搜索词汇topK问题 题目4:有一个包含了100亿个URL大文件,假设每个URL占用64B,请找出其中所有重复的URL。 补充问题:某搜索公司一天的用户搜索词汇是海量数据的(百亿数量级),请设计一种求出每天最热top100词汇的可行方法。