海量数据处理

一.hash海量数据处理问题:

1.最多问题

2.topK问题

3.相同问题

主要是分为三步

1.分而治之,这一步是当内存不足时存在如果内存充足可以不需要此步。

2.使用字典树trie(针对单词)或者hash_map统计次数(topK问题,最多问题),使用hash_set判断是否有重复。时间复杂度O(N)

3.使用堆排序找出最大K个元素。时间复杂度O(N'*logK)

http://www.cnblogs.com/sooner/p/3266545.html

二.bitmap解决是否存在重复的数,是否存在某个数。

是否存在某个数,编程珠玑第一章有具体的例子

2.5亿个整数中找出不重复的整数的个数,内存空间不足以容纳这2.5亿个整数

三.桶排序解决中位数问题

5亿个int找它们的中位数

原文地址:https://www.cnblogs.com/liuweilinlin/p/3279242.html