百度笔试题

shusheng

CFC 分析员
VIP
注册
2003-07-10
消息
9,868
荣誉分数
440
声望点数
193
据称是百度常见笔试题,我没有标准答案,没事的人做了玩玩吧。:)


题一:
有这么一个程序,每天要接受5千万个数据包(数据包的格式如下),数据被顺存储在一些文件中。程序每天定点对数据进行处理。对数据分组并按从大到小的顺序排序。已知一个文件的最大 大小为2G,一个进程的最大内存大小为2G。现在只允许用一个 CPU数量为4个,内存为16G 的服务器 完成整个过程,使得时间尽可能的短。
您的任务:尽可能的描述 数据结构(或文件结构),写出尽可能多的 伪代码,流程图。

Ps:
1.程序随机访问外存耗费的时间是顺序访问的10倍。
2.50G,5千万的数据包.顺序访问是20分,随机访问大概是4个小时。


题二:
假设一个mp3搜索引擎收录了2^24首歌曲,并记录了可收听这些歌曲的2^30条URL,但每
首歌的URL不超过2^10个。系统会定期检查这些URL,如果一个URL不可用则不出现在搜索结
果中。现在歌曲名和URL分别通过整型的SONG_ID和URL_ID唯一确定。对该系统有如下需求:
1) 通过SONG_ID搜索一首歌的URL_ID,给出URL_ID计数和列表
2) 给定一个SONG_ID,为其添加一个新的URL_ID
3) 添加一个新的SONG_ID
4) 给定一个URL_ID,将其置为不可用

限制条件:内存占用不超过1G,单个文件大小不超过2G,一个目录下的文件数不超过128个。

为获得最佳性能,请说明设计的数据结构、搜索算法,以及资源消耗。如果系统数据量扩大,该如何多机分布处理?
 
后退
顶部