百度校园招聘软件研发笔试题和面试题答案
百度(Nasdaq简称:BIDU)是全球最大的中文搜索引擎,2000年1月由李彦宏、徐勇两人创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。
以下是2015百度校园招聘软件研发笔试题,共享给各位应届毕业生了解:
一 简答:
1 说明数据库和线程死锁的原理和必要条件,如何防止死锁。
2 面向对象开发的三要素和五个基本原则。
3 Windows下内存管理叙述,并说明其优缺点。
二 算法和程序设计
1 某公司举行羽毛球大赛,共1001人,采用淘汰制,至少需要多少场比赛?用程序模拟实现。
2 100盏灯,第一轮操作:全部亮灯;第二轮,隔一个灭一个灯,即第偶数盏等灭掉;第三轮:隔两盏灯,如果是亮着的,灭掉,如果没亮,则打开;以此类推,进行到第100轮操作的时候,有多少盏灯是亮着的?
3 20个数组,每个数组有500个数,都按照降序排列,而且每个数组中保存的是uint 类型的数,32位。问如何选择其中的最大的500个数。
4 系统设计:太长了记不太清楚了,大意就是手机输入法,数字2和字母abc在一个键上,3和def…9和wxyz。针对输入法做了一下改进,联系人保存在UserList中,现在输入数字字符串NumStr“926”,则一下两种情况可以返回:
1 手机号码为13792611111等连续包含“926”的联系人会返回;
2 现代语文,王小二。。。等会返回;因为“926”对应的一种拼音组合是“WAN”,这样wannianli,wangxiaoer等中包含wan,符合结果。
依据以上,写出程序。
输入:UserList,NumStr,和汉字拼音映射表Dir;
输出:ResultList