2012年百度实习生招聘-java开发
2012-09-25 21:22
232 查看
简答题
1、给一个单词a,如果通过交换单词中字母的顺序可以得到另外的单词b,那么b是a的兄弟单词,比如单词army和mary互为兄弟单词。现在要给出一种解决方案,通过用户输入的单词,根据给定的字典找出输入单词有哪些兄弟单词。请具体说明数据结构和查询流程,要求时间和空间效率尽可能地提高。
2、线程和进程的区别及联系?如何理解“线程安全”问题?
3、C和C++中如何动态分配和释放内存?他们的区别是什么?
算法设计
1、网页爬虫在抓取页面时,从指定的url站点入口开始爬取这个站点上的所有url link,抓取到下一级link对应的页面后,同样对该页面上的link进行抓取从而完成深度遍历。为简化问题,我们假设每个页面上至多只有一个link,如从www.baidu.com/a.html链接到www.baidu.com/b.html再链接到www.baidu.com/x.html,当爬虫抓取到某个页面时,有可能再链接回www.baidu.com/b.html,也可能爬取到一个不带任何link的终极页面。当抓取到相同的url或者不包含任何link的终极页面时即完成爬取。爬虫在抓取到这些页面后会建立一个单向链表,用来记录抓取到的页面。如:a.html->b.html->x.html...->NULL.问:对于爬虫分别从www.baidu.com/x1.html和www.baidu.com/x2.html两个入口开始获得两个单向链表,得到这两个单向链表后,如何判断他们是否抓取到了相同的url?(假设页面url上百亿,存储资源受限,无法用hash方法判断其是否包含相同的url)
请先描述相应的算法,再给出相应的代码实现。(只需给出判断方法代码,无需爬虫代码)
2、数组al[0,mid-1]和al[mid,num-1]是各自有序的,对数组al[0,num-1]的两个子有序段进行merge,得到al[0,num-1]整体有序。要求空间复杂度为O(1)。注:al[i]元素是支持'<'运算符的。
系统设计
两个200G大小的文件A和B,AB文件里内容均为无序的一行一个正整数字(不超过2^63),请设计方案,输出两个文件中均出现过的数字,使用一台内存不超过16G、磁盘充足的机器。
方案中指明使用java编程时使用到的关键工具类,以及为什么?
相关文章推荐
- 2012年百度实习生招聘——java开发
- 百度2012年实习生招聘
- 百度2015实习生招聘(开发测试工程师)一面总结
- 2017携程java后台开发工程师暑期实习生招聘面试经验分享
- 2015年百度春节招聘 java后台开发题目
- 百度20150419实习生招聘笔试题-1-java
- 【百度、腾讯、阿里等】+【JAVA开发实习生】+春招面试经验
- 百度笔试2012暑期实习生招聘(java)
- 百度基础架构组-实习生面试(2016.08 java后台开发)
- 百度笔试2012暑期实习生招聘(java)
- 百度Java开发实习生面经
- 2012年百度在考虑使用什么移动开发技术?让我们看看他们的招聘广告吧
- 百度2012年春季实习生校园招聘笔试题和答案
- 招聘实习生,要求懂java开发
- 【百度、腾讯、阿里等】+【JAVA开发实习生】+春招面试经验
- 阿里2017暑期实习生招聘技术岗编程题2--java实现
- 百度2012实习生招聘笔试题目(java 方向)
- 腾讯2015软件开发实习生招聘笔试
- 百度2012年实习生笔试题
- 驰骋工作流程引擎 java .net 开发人员- 英才招聘