百度13号移动笔试

一、 1、什么是RISC;
2、通过后序、中xu求前序 
3、重写与重载的区别 
二、 
1、反转链表
2、判断两个数组中是否有相同的数字 
3、1000瓶水中找 出有毒的那瓶,毒性一周后发作,一周内最少需要多少只老鼠 
三、系统设计 email客户端,支持多账户和pop3等协议 
  1、请写出可能的至少5个用例; 
  2、使用sqlite存储帐户、已收信息、已发信息、附件、草稿,请设计合理的表结构 

  3、pop3等协议等接口已完成,请给出email客户端的模块设计图。


2011年

一.简答题

1.用线性表,二叉平衡树,哈希表存储数据,比较各个的优劣。

2.给定一个十进制数,转换成N进制。

3.给一个程序代码进行分析。主要是内存管理方面的。有4个小题目,如下:

    (1)C程序将内存分为哪几类(答案在《程序员面试宝典》第175页)

    (2)结合题目中给出程序代码,分析一些变量是属于(1)类中的哪一类。(答案《程序员面试宝典》第175页下面的实例)

    (3)分析题目中程序代码关于内存分配的语句。内存分配失败后,结果是什么?

    (4)delete与 free的异同。判断题目代码中使用是否正确。(答案《程序员面试宝典》第81页)

二,系统设计

对于一个递增数组,我们可以采用二分查找法判断数组是否存在数x。但现在有一不太规则的数组A’,但它又具备一定的规则性:在某一范围是递增,如数组序列:{15,16,17,21,1,4,6,7,100,124,156,…},在前4项是递增的,第5项到第9项也是…在这样的数组中,如何查找数x是否存在了。请详细给出你的算法。并分析算法的时间复杂度和空间复杂度。


posted @ 2012-10-19 17:46  Leeforall  阅读(206)  评论(0编辑  收藏  举报