![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 51
liu6539152
这个作者很懒,什么都没留下…
展开
-
TOP K问题
经典问题分析 上千万or亿数据(有重复),统计其中出现次数最多的前N个数据,分两种情况:可一次读入内存,不可一次读入。 可用思路:trie树+堆,数据库索引,划分子集分别统计,hash,分布式计算,近似统计,外排序 所 谓的是否能一次读入内存,实际上应该指去除重复后的数据量。如果去重后数据可以放入内存,我们可以为数据建立字典,比如通过 map,hashmap,trie,然后直接进原创 2011-12-18 14:49:00 · 4852 阅读 · 0 评论 -
最大子序列、最长公共子串、最长公共子序列
最大子序列、最长公共子串、最长公共子序列 最大子序列 最大子序列是要找出由数组成的一维数组中和最大的连续子序列。比如{5,-3,4,2}的最大子序列就是 {5,-3,4,2},它的和是8,达到最大;而 {5,-6,4,2}的最大子序列是{4,2},它的和是6。你已经看出来了,找最大子序列的方法很简单,只要前i项的和还没有小于0那么子序列就一直向后扩展,否则丢弃之前的子序列开始新的子序列转载 2011-12-15 13:53:13 · 494 阅读 · 0 评论 -
海量数据中找出中位数或者第N大(小)数————桶的思想解决方案
这几天被打击的不行,心情还是依然的低落,还是去面试了,2次都遇到了这同样的问题,都是基于这个思想解决的。下面以寻找中位数位为例,说明此方法。 题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存)。 分析: 既然要找中位数,很简单就是排序原创 2011-12-28 10:41:59 · 5186 阅读 · 1 评论