
算法
IT_YUAN
这个作者很懒,什么都没留下…
展开
-
trie树
http://dongxicheng.org/structure/trietree/原创 2013-05-08 11:25:27 · 706 阅读 · 0 评论 -
十七道海量数据处理面试题与Bit-map详解
第一部分、十五道海量数据处理面试题1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。遍历文件a,对每个url求取,然后根据所取得的值将url分别存储到1000个小文转载 2013-05-09 09:46:36 · 848 阅读 · 0 评论 -
解密搜索引擎技术实战:Lucene&Java精华版
http://book.51cto.com/art/201106/269032.htm转载 2013-05-09 15:28:37 · 1708 阅读 · 0 评论 -
从海量数据中提取TopK过程模拟
在工作面试中,经常会出现考察海量数据处理的问题:给你若干个数,从其中找到出现次数最多的K个数据。 (百度面试题中,有N多IP地址,让你找访问量TopK的IP) 解决方法1. 有大量重复数据 如果有大量重复数据,可以利用map,遍历文件,一次性将所有不同数据载入内存,对于重复数据,出现次数++。读取完毕后,利用堆排序,提取出topK即可。 2. 重复数据很少转载 2013-05-09 20:43:03 · 1445 阅读 · 0 评论 -
动态规划
理论辅助: 动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值的解。动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。与分治法不同的是,适合于用动态规划求解的问题,经分解得到子问题往往不是互相独立的。若用分治法来解这类问题,则转载 2013-06-04 22:04:50 · 941 阅读 · 0 评论 -
并查集(Union-Find)算法介绍
本文主要介绍解决动态连通性一类问题的一种算法,使用到了一种叫做并查集的数据结构,称为Union-Find。更多的信息可以参考Algorithms 一书的Section 1.5,实际上本文也就是基于它的一篇读后感吧。原文中更多的是给出一些结论,我尝试给出一些思路上的过程,即为什么要使用这个方法,而不是别的什么方法。我觉得这个可能更加有意义一些,相比于记下一些结论。转载 2013-11-20 21:53:54 · 1074 阅读 · 0 评论