注册 登录
编程论坛 C++教室

(讨论)百度2010校园招聘网络笔试题

flyingcloude 发布于 2009-11-09 13:53, 2390 次点击
题目

百度2010校园招聘全国笔试题RD-3


温馨提示:
1. 本次考试为闭卷考试,请保证独立完成试卷;
2. 请深入思考每一个问题,方法不会只有一种,请尽情发挥,充分展示你的才华;
3. 解决问题是一门权衡的艺术,如果有可能,请说明你的考虑;
4. 若写不出具体代码,也请写明解题思路;
5. 题目或许有难有益,请通览试卷后进行答题,尽可能多的完成你所擅长的题目;

准备好!笔试马上开始。
“框”广天地,大有所为!祝同学们都能够取得好成绩!

本试卷共分为两个部分,共4道题。


第一部分、算法与程序设计

1.在一棵一般的二叉树中找到指定的元素,如果有重复出现的元素,要求元素为深度最深的任何一个。指定元素找不到时返回EMPTY_NODE,请用C语言实现,相关数据结构与函数声明如下:
struct Node
{
    int iValue;  
    int id;
    Node *pLeft;
    Node *pRight;
};

const Node EMPTY_NODE = {0, 0, NULL, NULL};
Node findDeepest(Node *pRoot, int iWanted); //pRoot为根节点,wanted为指定元素的iValue


2.一个单词字典库,单词个数约为10万,每个单词长度不超过16,单词都是由小写字母组成,同时给出16个小写字母,请设计一种高效算法来找到用这些给 出字母拼出一个字典中最大长度的单词。给出的16个字母每个字母最多使用一次,也可以不使用。存在多解的时候给出任意一个最优答案就行。
例如:给出adeenrstuvxyzuki可以拼出adventures
请详细描述你的算法思路(如需要,可给出代码\伪代码来辅助描述),并分析其时间复杂度。最后请分析下你的算法以及数据结构的优缺点,存在哪些可改进的地方。


第二部分、系统设计题

1.       有200亿条数据,每条数据的大小在1K~1M不等,每条数据有一个唯一的u_int64的id。
请设计一个读取数据系统,能根据id获取数据。要求:
A.        内存有限制,16G
B.        尽可能利用内存资源
C.        尽可能高效的获取数据
D.        可以利用磁盘,磁盘容量不受限制


2.       C2C网站的商品子系统,包括的关系数据有 分类、属性、商品。
一个商品只能属于一个分类,不同的分类有不同的属性(多个),每个属性有多个候选属性值,其中分类、属性、属性值的更新频率较低。
一个商品的属性,是所属分类的属性,属性值是候选属性值中的一个或多个。
例如:
分类:衣服
属性:尺寸、颜色
尺寸的候选属性值:S/M/L/XL/XXL/XXXL
颜色的候选属性值:黑/白/红/黄/蓝
商品:衣服A,尺寸S,颜色黑
另外,商品还有卖家、价格等其它信息

请设计商品子系统的存储结构或数据库结构。要求:
A.        能够正确维护分类、属性、商品之间的关系数据
B.        尽量减少冗余
C.        考虑数据的增、删、改、查操作,效率尽可能高
D.        能够按照卖家查询出其发布的所有商品

12 回复
#2
yi198606992009-11-09 14:17
有难度,我一个都做不来
#3
wgd123pl2009-11-09 15:55
上面的这些问题,很有深度,朋友为何不将你的参考答案,也一起贴上呢?这样我们会觉得你更有深度。请不要介意,小弟初次出来窄道。。。。。。。
#4
qlc002009-11-09 17:03
系统设计第一题我感觉应该是使用外排序,建立索引,像二级、三级索引等等。把ID划分为几个区间,区间之中再划分!最后把索引表装入内存,进行查找!也不知道是不是这样的,
#5
flyingcloude2009-11-09 22:17
回复 3楼 wgd123pl
大家讨论讨论

[ 本帖最后由 flyingcloude 于 2009-11-9 22:18 编辑 ]
#6
nishimywife2009-11-10 11:10
看也看不懂,一个字难
#7
yyg99992009-11-12 23:38
字我是认识,可是连在一起就不懂了
#8
dsr_dbh2009-11-14 15:16
有点难。。。
#9
lklqlk19912009-12-19 21:03
我还在入门级啊........
不行.....我好晕
#10
asd67918682009-12-20 19:35
....。。 看完所有题 我竟然一点头绪都没有,,,,,,,,,,
#11
caiv52009-12-22 21:53
学c++半年的  小白 飘过
#12
hey20002010-04-07 10:52
唉,一个都不会……
#13
yghq0082010-05-19 17:15
研究
1