九月百度,迅雷,华为,阿里巴巴,最新校招笔试面试题

本文精选了2014年九月百度、迅雷、华为、阿里巴巴等公司的校招笔试面试题,涉及算法、数据结构及编程实践等内容,旨在帮助求职者准备面试。

九月百度,迅雷,华为,阿里巴巴,最新校招笔试面试十题


题记

    本博客自2010年10月11日开通以来,已经帮助了一大批人找到工作,特别是连续三年在每一年的9、10月份陪伴了至少三届毕业生找工作的旅程,包括校招中的笔试面试,今年也不会例外,我会在本博客开通3周年之际一如既往的陪伴大家一起成长。

    本文所整理的全部笔试面试题要么来源于我群内群友们的分享,要么摘自论坛或博客,所有原题均来自网络。虽然本文中整理的绝大部分笔试面试题偏算法(自己特意为之之故),但不论是哪一年的校招,一般说来,笔试偏基础尤其是选择题部分,涵盖语言,计算机组成原理、操作系统、网络协议、数据库、概率期望等知识),而面试则偏算法,且无论是笔试还是面试,两者都很看重你的实际编程能力,希望大家知晓。

   OK, 本文会尽量保持每天更新一道新的笔试或面试题,直到9月底(更欢迎各位通过微博私信http://weibo.com/julyweibo,或邮箱zhoulei97@aliyun.com提供题目,亦可直接评论于本文下),如果大家对以下任何一题中有任何思路,欢迎评论于本文之下,或show me your code!谢谢。


九月迅雷,华为,阿里巴巴,最新笔试面试十题

  1. 8月15日,百度2道面试题:
    1、来自《编程之美》的概率题:一个桶里面有白球、黑球各100个,现在按下述规则取球:的
        i 、每次从通里面拿出来两个球;
        ii、如果取出的是两个同色的求,就再放入一个黑球;
        ii、如果取出的是两个异色的求,就再放入一个白球。
    问:最后桶里面只剩下一个黑球的概率是多少?
    2、算法题:给你一个自然数N,求[6,N]之内的所有素数中,两两之和为偶数的那些偶数。
  2. 9月5日,华为2014校园招聘的机试题目
    通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。
    压缩规则:
        1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc"。
        2、压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。
    要求实现函数: 
         void stringZip(const char *pInputStr, long lInputLen, char *pOutputStr);
        输入pInputStr:  输入字符串lInputLen:  输入字符串长度
        输出 pOutputStr: 输出字符串,空间已经开辟好,与输入字符串等长;
    注意:只需要完成该函数功能算法,中间不需要有任何IO的输入输出
    示例 
        输入:“cccddecc”   输出:“3c2de2c”
        输入:“adef”     输出:“adef”
        输入:“pppppppp” 输出:“8p”
  3. 9月6日,网新恒天2014校园招聘笔试编程题
    已知memcpy的函数为: void* memcpy(void *dest , const void* src , size_t count)其中dest是目的指针,src是源指针。不调用c++/c的memcpy库函数,请编写memcpy。
    点评:老题,参考答案如下
    1. //copyright@July 2013/9/24  
    2. void* memcpy(void *dst, const void *src, size_t count)      
    3. {      
    4.     //安全检查  
    5.     assert( (dst != NULL) && (src != NULL) );      
    6.   
    7.     unsigned char *pdst = (unsigned char *)dst;      
    8.     const unsigned char *psrc = (const unsigned char *)src;      
    9.   
    10.     //防止内存重复  
    11.     assert(!(psrc<=pdst && pdst<psrc+count));      
    12.     assert(!(pdst<=psrc && psrc<pdst+count));      
    13.   
    14.     while(count--)      
    15.     {      
    16.         *pdst = *psrc;      
    17.         pdst++;      
    18.         psrc++;      
    19.     }      
    20.     return dst;      
    21. }    
  4. 9月9日,迅雷2014校招笔试编程题:
    已知集合A和B的元素分别用不含头结点的单链表存储,函数difference()用于求解集合A与B的差集,并将结果保存在集合A的单链表中。例如,若集合A={5,10,20,15,25,30},集合B={5,15,35,25},完成计算后A={10,20,30}。
    链表结点的结构类型定义如下:
    1. struct node    
    2. {    
    3.     int elem;    
    4.     node* next;    
    5. };    
    请完成函数void difference(node** LA , node* LB)
    点评:参考答案或更多题目请参见:http://blog.csdn.net/hackbuteer1/article/details/11482103
  5. 9月10日,美团网2014校招研发笔试哈尔滨站
    1、链表翻转。给出一个链表和一个数k,比如链表1→2→3→4→5→6,k=2,则翻转后2→1→4→3→6→5,若k=3,翻转后3→2→1→6→5→4,若k=4,翻转后4→3→2→1→5→6,用程序实现
    点评:类似编程艺术第1章左旋转字符串,见:http://blog.csdn.net/v_JULY_v/article/details/6322882
    2、一个m*n的矩阵,从左到右从上到下都是递增的,给一个数elem,求是否在矩阵中,给出思路和代码
    点评:杨氏矩阵查找,见编程艺术第23章:http://blog.csdn.net/v_july_v/article/details/7085669
  6. 9月14日,阿里巴巴2014校招笔试哈尔滨站
    1、宿舍内5个同学一起玩对战游戏。每场比赛有一些人作为红方,另一些人作为蓝方。请问至少需要多少场比赛,才能使任意两个人之间有一场红方对蓝方和蓝方对红方的比赛?答案为4场,参考如下图,作者doc_sgl:

    点评:其余题目请参见:http://blog.csdn.net/doc_sgl/article/details/11695671
    2、一个有10亿条记录的文本文件,已按照关键字排好序存储。请设计算法,可以快速的从文件中查找指字关键字的记录。
  7. 9月14日,阿里巴巴-系统工程师-北京站
  8. 9月16日,创新工场2014校招笔试题

    点评:上面第3题还是杨氏矩阵查找,见编程艺术第23章:http://blog.csdn.net/v_july_v/article/details/7085669。既然这么多公司都喜欢考杨氏矩阵查找,那么再给出杨氏矩阵查找一题的扩展:给定 n×n 的实数矩阵,每行和每列都是递增的,求这 n^2 个数的中位数,分析详见:http://zhiqiang.org/blog/science/computer-science/median-algorithm-of-ordered-matrix.html
  9. 9月21日,百度2014校招-济南站

  10. 9月21日,腾讯2014软件开发校招-简答题-广州

  11. 9月22日,人人校招笔试题

    点评:上述第1题寻找满足条件的两个数,见编程艺术第5章:http://blog.csdn.net/v_JULY_v/article/details/6419466;上述第2题见编程艺术第21章:http://blog.csdn.net/v_july_v/article/details/6890054
  12. 9月22日,阿里巴巴北邮站



  13. 9月23日,网易电商部-社招面试
    HashMap与HashTable区别
    点评:HashMap基于Hashtable实现,不同之处在于HashMap是非同步的,并且允许null,即null value和null key,Hashtable则不允许null,详见:http://oznyang.iteye.com/blog/30690。此外,记住一点:hashmap/hashset等凡是带有hash字眼的均基于hashtable实现,没带hash字眼的如set/map均是基于红黑树实现,前者无序,后者有序,详见此文第一部分:http://blog.csdn.net/v_july_v/article/details/7382693
  14. 待续,9月24日中午...


后记

   算上今年,本博客已经连续整理了4个年头的笔试面试题,从这些笔试面试题中,细心的朋友自会发现,每一年校招的很多编程题屡屡都是编程艺术系列上的原题,故我希望大家掌握的是一类题目的方法,而不是纠结于某一道题的标准答案。

    正因为方法比答案重要,所以编程艺术系列从最容易想到的思路开始讲起,一步步优化,而不是其它题解那样一上来就给你所谓的标准速成答案。

    最后,除了程序员编程艺术系列外,再推荐一些资料、书籍和讲座给大家,供大家参考:

  1. 程序员编程艺术http://blog.csdn.net/column/details/taopp.html
  2. 秒杀99%的海量数据处理面试题http://blog.csdn.net/v_july_v/article/details/7382693
  3. 《编程之美》;
  4. 微软面试100题系列http://blog.csdn.net/column/details/ms100.html
  5. 《剑指offer》;
  6. 我个人举办的专为帮助大家找工作的面试&算法讲座http://blog.csdn.net/v_july_v/article/details/7237351#t24
  7. 两个程序员面试网站,leetcode:http://leetcode.com/,与careercup:http://www.careercup.com/
    有何见解或思路,欢迎随时评论于本文之下,或show me your code!感谢。

极品五笔使用技巧  1、重码调序  Ctrl+序号 可以进行重码手工调序,如输入IPTV,显示“党委”、“常委”两重码。“党委”在,“常委”在后,如希望再次输入时“常委”在,就用Ctrl+2录入。   2、GB/GBK字符集的切换   极品五笔Vista新版全面支持GB2312-80简体汉字字符集与GBK扩展字符集的输入。GB2312-80简体汉字字符集共有6763个汉字字符,包含99.95%常用汉字,基本上能够满足日常工作与学习需要。GBK扩展字符集包含全部GB2312字符之外,还增加14139个不常用汉字字符,多是些冷僻字及繁体字、港台用字。由于GBK字库较大,字符不常用(普通人一年里也用不到几个这样的字),为了避免过多的重码,提高输入效率,系统缺省为GB2312输入方式(状态条上“极品五笔”为黑色)。如果要输入一些冷避字如“喆”、“鎔”时,可以用 Ctrl+M 键切换到GBK方式下(状态条上“极品五笔”变红色),输入后记着用 Ctrl+M 切换回来。  3、巧用极品五笔输入生僻字   在GBK字符集里,“昄”与“蛌”重码,倘若昄依佛门的“昄”字是自己经常使用的字,可以将“昄”视为自定义词组保存起来,以后毋须切换,就可以直接在GB2312方式下录入了(亦有迴避重码的作用)。  右键单击极品五笔状态条,选择“手工造词”,并将事先复制的“昄”字粘贴到“词语”框中;在“外码”框,键入“昄”字的编码“JRCY”,单击“添加”按钮。此时“昄”字及编码出现在“词语列表”框中。以后,在GB2312输入方式下,直接键入“JRCY”就可录入GBK字符“昄”字了。重复上述步骤把你常用到的GBK汉字如法炮制成极品五笔的“词组”,方便你的输入。  4、迁移你的自定义词组  作为一个Windows用户,恐怕重装系统是经常的事儿,但是一旦重装了操作系统之后,我们几乎又要重新安装所有软件。重新安装软件固然简单,可是我们自己定义的词组怎么办呢?其实不要担心,极品五笔输入法的自定义词库文件名为JPWB.EMB,在平时,将此文件作一个备份,在使用时只需将它重新拷贝到目标文件夹下就可以了(JPWB.EMB实际存放的位置与登录系统的用户名相关,Win2000/Xp/2003系统,一般在\Documents and Settings\你的登录名\Application Data\Microsoft\IME\JPWB下,Vista系统一般在\Users\你的登录名\Administrator\AppData\Roaming\Microsoft\IME\JPWB下)。  极品五笔自定义词库文件查找方法:在Xp系统中,依次从 开始-搜索-文件或文件夹-所有文件和文件夹,在“全部或部分文件名”框内输入JPWB.EMB-在更多高级选项,将“搜索隐藏的文件和文件夹”与“搜索子文件夹”两项选中,然后点搜索。在Wista系统中,依次点 开始-搜索-文件或文件夹,调出搜索框,点“高级搜索”,将“包括非索引、隐藏和系统文件”勾选,-在“名称”框内输入JPWB.EMB后点搜索。  5、设置光标跟随状态  右键单击极品五笔状态条,选择“设置...”调出“输入法设置”对话框,将下面“光标跟随”勾去除,点确定。以后,汉字输入框与候选框以一个长条状显示在屏幕的最下边,丝毫不影响汉字的录入。   6、调整状态条的位置  由于输入法状态条的权限较高,因此,它总是在所有的窗口之上,有时候我们在输入汉字时,会出现输入法窗口遮住提示栏的情况,这时候只要用鼠标拖动输入法状态条到屏幕任意一个地方再松开鼠标即可。如我们将状态条放到了Word的标题栏上了,是不是有一点儿“万能悬挂输入法”的味道?  7、输入法的缺省设置  固定使用极品五笔的人,希望一打开机子就有极品五笔“伺候”。要实现这一点,鼠标右键单击桌面右下角语言指示器图标,点“设置...”,调出“文字服务和输入语言”对话框,在默认输入语言选项里,点下拉式菜单,选中极品五笔输入法,再点下面的“确定”按钮,重启或注销登录电脑后,极品五笔就是默认调用的输入法。   8、用全拼反查极品五笔单字编码  设置及使用方法如下:  设置:打开全拼输入法,用鼠标右键单击全拼状态条,选择“设置...”调出“输入法设置”对话框,在编码查询框内选中“极品五笔”后确定。  使用:在今后的使用过程中,如果遇到不会输入的单字时,临时切换成全拼输入这个单字,结束时输入框可显示编码,这个绿色的编码就是该字极品五笔的编码。  9、袖珍五笔编码查询器下载  下载一: http://www.jpwb.name/soft/wbbm.exe   (53KB)  下载二: http://www.365t.cc/soft/wbbm.exe   (53KB)  (来源:http://www.jpwb.name 意见与建议:changcheng555@163.com)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值