九月十月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试八十题
自发表上一篇文章至今(事实上,上篇文章更新了近3个月之久),blog已经停了3个多月,而在那以前,自开博以来的21个月每个月都未曾断过。正如上一篇文章支持向量机通俗导论(理解SVM的三层境界)末尾所述:”额,blog许久未有更新了,由于最近实在忙,无暇顾及blog。“与此同时,工做之余,也一直在闲心研究数据挖掘:"神经网络将可能做为Top 10 Algorithms in Data Mining之番外篇第1篇,同时,k-最近邻法(k-nearest neighbor,kNN)算法谈到kd树将可能做为本系列第三篇。这是此系列接下来要写的两个算法,恰好项目中也要用到KD树“。html
但很显然,若要等到下一篇数据挖掘系列的文章时(更新:下一篇kd树目前已经完成:http://t.cn/zjLQ8Ky),说不定要到年末去了,而最近的这段时间,9月、10月,正是各类校招/笔试/面试火热进行的时节,本身则但愿能帮助到这些找工做的朋友,故此,怎能无动于衷,因而,3个多月后,blog今天更新了。node
再者,虽然blog自10年10月开通至11年10月,一年的时间内整理了300多道面试题(这300道题所有集锦在此文中第一部分:http://blog.csdn.net/v_july_v/article/details/6543438)。但毕竟那些题已是前年或去年的了,笔试面试题虽然每一年类型变化不大,但毕竟它年年推陈出新,存着就有其合理性。linux
OK,如下是整理自8月下旬至10月分内的各大公司的笔试面试三十题(注:全部题目基本上所有为软件开发方向,题目来源:网络收集),相信必定能给正在参加各类校招的诸多朋友多少帮助,学习参考或借鉴(若是你手头上有好的笔试/面试题,欢迎经过微博私信:http://weibo.com/julyweibo,或邮箱:zhoulei0907@yahoo.cn发给我,或者干脆直接评论在本文下;同时,若你对如下任何一题有任何见解.想法.思路或建议,欢迎留言评论,你们一块儿讨论,共同享受思考的乐趣,谢谢)。ios
九月十月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试八十题c++
9月11日, 京东:web
谈谈你对面向对象编程的认识面试
4**9 的笔试题,比较简单:
1.求链表的倒数第二个节点
2.有一个整数数组,求数组中第二大的数算法
Q为0
说明数组中至少有两个0,那么N-1个数的乘积只能为0,返回0;
Q为正数
返回Q,由于若是以0替换此时AN-1中的任一个数,所获得的PN-1为0,必然小于Q;
Q为负数
若是以0替换此时AN-1中的任一个数,所获得的PN-1为0,大于Q,乘积最大值为0。
2. P为负数
sql
根据“负负得正”的乘法性质,天然想到从N个整数中去掉一个负数,使得PN-1为一个正数。而要使这个正数最大,这个被去掉的负数的绝对值必须是数组中最小的。咱们只须要扫描一遍数组,把绝对值最小的负数给去掉就能够了。
3. P为正数
shell
相似地,若是数组中存在正数值,那么应该去掉最小的正数值,不然去掉绝对值最大的负数值。上面的解法采用了直接求N个整数的乘积P,进而判断P的正负性的办法,可是直接求乘积在编译环境下每每会有溢出的危险(这也就是本题要求不使用除法的潜在用意),事实上可作一个小的转变,不须要直接求乘积,而是求出数组中正数(+)、负数(-)和0的个数,从而判断P的正负性,其他部分与以上面的解法相同。
10月10日人人网面试题
第一面:
一、(1)++i 和 i++,那个效率高?
(2)++++i,i++++,哪一个是合法的?
(3)实现int型的++i 和 i++操做。
二、一段程序,求输出。(考察静态变量和模版类)
10月15日,网新恒天笔试题
1.不要使用库函数,写出void *memcpy(void *dst, const void *src, size_t count),其中dst是目标地址,src是源地址。
点评:下面是nwpulei写的代码:
连接:http://blog.csdn.net/nwpulei/article/details/8090136。
2.给定一个字符串,统计一下哪一个字符出现次数最大。
3.咱们不知道Object类型的变量里面会出现什么内容,请写个函数把Object类型转换为int类型。
上面的递归程序,有什么地方须要改进呢?在递归的过程当中,有些数据被重复计算了。好比,若是开始咱们调用CalculateStringDistance(strA,1, 2, strB, 1, 2),下图是部分展开的递归调用。
能够看到,圈中的两个子问题被重复计算了。为了不这种没必要要的重复计算,能够把子问题计算后的解存储起来。如何修改递归程序呢?仍是DP!请看此连接:http://www.cnblogs.com/yujunyong/articles/2004724.html。
三、此外,关于这个“编辑距离”问题的应用:搜索引擎关键字查询中拼写错误的提示,能够看下这篇文章:http://www.ruanyifeng.com/blog/2012/10/spelling_corrector.html。「关于什么是“编辑距离”:一个快速、高效的Levenshtein算法实现,这个是计算两个字符串的算法,Levenshtein距离又称为“编辑距离”,是指两个字符串之间,由一个转换成另外一个所需的最少编辑操做次数。固然,次数越小越类似。这里有一个BT树的数据结构,挺有意思的:http://blog.notdot.net/2007/4/Damn-Cool-Algorithms-Part-1-BK-Trees」
最后,Lucene中也有这个算法的实现(我想,通常的搜索引擎通常都应该会有此项拼写错误检查功能的实现):http://www.bjwilly.com/archives/395.html。
四、扩展:面试官还能够继续问下去:那么,请问,如何设计一个比较两篇文章类似性的算法?(这个问题的讨论能够看看这里:http://t.cn/zl82CAH)
10月28日,微软三面题「顺祝,老妈明天生日快乐!」:
找一个点集中与给定点距离最近的点,同时,给定的二维点集都是固定的,查询可能有不少次,时间复杂度O(n)没法接受,请设计数据结构和相应的算法。
相似于@陈利人:附近地点搜索,就是搜索用户附近有哪些地点。随着GPS和带有GPS功能的移动设备的普及,附近地点搜索也变得煊赫一时。在庞大的地理数据库中搜索地点,索引是很重要的。可是,咱们的需求是搜索附近地点,例如,坐标(39.91, 116.37)附近500米内有什么餐馆,那么让你来设计,该怎么作?
点评:R树「从B树、B+树、B*树谈到R 树」仍是KD树「从K近邻算法、距离度量谈到KD树、SIFT+BBF算法」?
从今天开始,在继续整理笔试面试题的同时,将整理上面已经收录的一系列笔试面试题的答案,欢迎诸君与我共同讨论.思考.作之「参与的方式为:你除了能够直接评论在本文之下,你也能够经过邮件:zhoulei0907@yahoo.cn或私信:http://weibo.com/julyweibo 给我,或本身写一篇博文把连接发给我收录,无任何语言限制」2012.10.19...
注意:
请全部凡是已经在本文评论下show 出了你的代码code(含思路)的朋友:「10.13日以前第一批:zhutou100hao,zzran,yuankangjian_2,caopengcs,iamzhaiwei,milo_zhang_bs, tpm0513, huangxy10,宇智波鼬,sos-phoenix,aini201,aini201,xsfrank,zz198808 ,Dracula777,li850221,ghostjay0216,a81895898,donghang0535, iamzhaiwei,fengchaokobe,umissmesomuch,believe3,aini201, liuliuliu11,qichi_bj」+ 「10月13日之后第2批: 杜,litaoye,smilearchery,jiadong1125,nwpulei,wumuzi520,..,尽快发“ID号+你在本文评论下作的题目的题号”到我邮箱「zhoulei0907@yahoo.cn」或者联系QQ:786 165 179,我会在尽快发给你 十五个经典算法研究的 可自行编辑修改的WORD文档,或者直接转发加群下载获得:http://weibo.com/1580904460/z4fqHcWDV,欢迎各位及其余朋友们继续参与,感谢诸位。
本文评论下的全部代码未经仔细验证,若是读者发现其中任何问题或错误,欢迎指正,经验证后,我也会给你发送文档,其余此前经过私信或邮件或QQ发过我题目或答案的朋友们如若须要也请发邮件:“名字+ 原文中的题号” 给我以便传送文档。July、二零一二年十月十六日。