摘要:
2014-04-24 21:52题目:如果你要设计一个网络爬虫,如何避免进入抓取死循环?解法:对网址做格式归一化,重复检测。设计一个碰撞率尽量低的签名算法,对每次抓取了的网址计算签名并保存入库。一个正常网站中的超链接会有大量有向的环路(没有环路就代表你无法通过点击链接的方式回到之前访问过的地方,这肯... 阅读全文
posted @ 2014-04-24 21:59
zhuli19901106
阅读(203)
评论(0)
推荐(0)
摘要:
2014-04-24 21:26题目:有一列数,范围全部在1~N之间,保证所有1~N之间的数字都会出现。如果你有4KB的内存,并且知道N最多是32000。请设计方法,找出N,并打印出所有有重复的数字。解法:既然是“重复”,那就可以用位向量了。再考察N的范围,4KB内存有32768个位,足以容下至多3... 阅读全文
posted @ 2014-04-24 21:51
zhuli19901106
阅读(153)
评论(0)
推荐(0)
摘要:
2014-04-24 21:06题目:假设你有40亿个不重复的非负整数存在一个文件里,1GB的内存。你要如何找出一个文件中不包含的整数呢?如果是10亿个整数,10MB内存又该如何?解法:前者内存充足,可以直接用一个位向量来标记整数的出现情况,然后顺序扫描找出第一个没出现过的数字。后者内存不足,可以把... 阅读全文
posted @ 2014-04-24 21:26
zhuli19901106
阅读(217)
评论(0)
推荐(0)
摘要:
2014-04-24 20:44题目:对于Facebook、Linkedin这样的社交网站,你要如何设计一个数据结构来表示用户之间的关系呢?比如两个用户互为2nd-degree connection。你要如何设计算法来找出他们之间的联系路径呢?解法:显然,社交网络的数据是平方级别的,因为任何人的联系... 阅读全文
posted @ 2014-04-24 21:06
zhuli19901106
阅读(190)
评论(0)
推荐(0)
摘要:
2014-04-24 00:38题目:加入你要设计一个服务,供至多1000个client查询每日股票的最高、最低、开盘、收盘价,请描述你要如何设计这个服务。解法:可以用SQL数据库组织,也可以用K-V数据库来提供更高性能。如果股票数量相对不大,还可以用XML文件组织数据。在百度里搜“BIDU”,或在... 阅读全文
posted @ 2014-04-24 05:04
zhuli19901106
阅读(194)
评论(0)
推荐(0)
摘要:
2014-04-24 00:05题目:用拉链法设计一个哈希表。解法:一个简单的哈希表,就看成一个数组就好了,每个元素是一个桶,用来放入元素。当有多个元素落入同一个桶的时候,就用链表把它们连起来。由元素值到哈希值的映射就是哈希函数了。代码: 1 // 8.10 Design a hash table... 阅读全文
posted @ 2014-04-24 00:15
zhuli19901106
阅读(278)
评论(0)
推荐(0)
摘要:
2014-04-23 23:57题目:如何设计一个内存文件系统,如果可以的话,附上一些代码示例。解法:很遗憾,对我来说不可以。完全没有相关经验,所以实在无从入手。这题目应该和工作经验相关吧?代码:1 // 8.9 How would you design an in-memory file syst... 阅读全文
posted @ 2014-04-24 00:05
zhuli19901106
阅读(169)
评论(0)
推荐(0)


浙公网安备 33010602011771号