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是否存在了。请详细给出你的算法。并分析算法的时间复杂度和空间复杂度。