回答。
淘宝的面试很给力,一面完,行得话马上二面,二面行得话马上三面!不过一面后,还得先去腾讯HR面,要求另约时间。然后回去宿舍休息,12点45分就过去华工大酒店了。在那里看到暨大面产品的漂亮MM,我居然木有问拿电话!后悔!!!
腾 讯HR面试居然问我实习经历,木有实习过的表示郁闷。然后更悲剧的是,人家问我专业学得如何,我口贱自爆挂科!我勒了去!那HR说“哦,你挂过科,挂哪一 科?”然后记录下来了。呜呜呜!!!我算诚实吧。之后听HR介绍了公司的某些流程制度。然后我很不安地离开了华工大酒店,直奔去中大面淘宝。二面又是问数 据结构、算法、各种查找的优缺点、项目、linux系统的东西等,还问了一道智力题:有条村,N个人,发生了命案,N个人中有5个是凶手,每个村民都会讲 一句真话一句假话,问至少调查多少个人才找出凶手。我勒了去,不懂。事后才知道,类似小白鼠试毒药问题,答案是:2^5,但明显他这题问题很多漏洞,小白 鼠试到毒药会死,真话和假话怎么分辨出来。算法问了链表归并排序,要我写代码,原理是简单的,但写得很糊涂,他也看得很糊涂,我干脆讲一遍,他也就懒得看 我代码了。
之后叫我直接去三面,听带路的说很少人能去三面,我也威风一次了。三面是两个面试官,一个技术,一个HR,但都很年轻,聊得很 开心,先问技术后聊天,我又重复提那血泪的三年自学史,我感觉他们都比较认可我。然后HR就送我到门口,就结束了。后来才知道淘宝面试当晚发 offer… 然后自己很自然被BS了。中途他问我有没问题的时候,我知道不问问题又不太好,所以我随便问了一个问题:“我数据库不太会,你那里要求数据库高的么?” 现在想起,自己真脑残…自爆弱项…总结:知识这么多,肯定有所专长,有所不擅长的,要善于引导面试官到自己擅长的地方,更不能脑残自爆弱项…
2011.10.13——腾讯offer
在中午饭的时间中收到腾讯电话口头offer,那激动的心情,真不容易。马上丢下饭碗给电话家人报喜。
再 次鸣谢boXer师兄,他在我求职阶段不断给我意见和指导帮助我。如果没有师兄的帮助,可能我还在漫长的求职之路上。感谢求职路上的所有面试官认同我,给 予我机会。感谢如鹏杨中科老师给我自学计算机的启蒙。如鹏的口号:“在校不迷惘,毕业既辉煌!”感谢父母家人兄弟朋友的支持和理解。还感谢自己能在他人不 理解、嘲笑、诋毁下还坚持自己的梦想和努力。谋事在人,成事在天。感谢上天。
一面遇到所有问题如下:1、运行下面的函数会有什么结果?为什么?[cpp]
void foo(void)
{
char string[10],str1[10];
int j;
for(j=0;j<10;j++)
{
str1[j]=’a';
}
strcpy(string,str1);
printf(“%s”,string);
}[/cpp]
答:
(1)字符串赋值错误:str1[10]只能容纳9个字符和1个空字符。而题中for语法赋值了0~9共10个。
(2)strcpy里由于str1没有空字符结尾,导致越界不可以预料的结果。
2、写strcpy函数;解释:strcpy的原理大家都懂,但要注意程序的正确性、健壮性、可靠性。
答:
面试技巧:在实际面试中,我还故意判断了一下 strDest和 strSrc内存段有没有重叠,虽然不是必要的,但还是为了突出自己有这方面的考虑。
3、40亿个整型(32位)数据中怎么找出没有出现过的整型数字?为什么?
这题是典型的海量数据处理,面试中很常见。
答:32 位整型总有42亿个,而题目总数只有40亿,肯定有未出现过的数字。可以开一个容量42亿的为bitmap——位的数组,每一位代表一个整型,一共需要内 存是525M左右(若内存有限,则开到文件里去,但会明显增加硬盘I/O),遍历海量数据一遍,并在bitmap对应的位上至1标记。最后遍历 bitmap,将标记位为0对应的数字输出即可。时间复杂度是O(n)。
4、STL各种容器的特点和实现方式;
熟悉各种STL容器,简单介绍一下就行了。
5、最后让我描述一下做过的项目,我选的是JxWeb服务器,涉及到知识点:master-worker多进程模型、epoll网络I/O模型、多进程同步、RTO超时重传机制、HTTP协议、怎么支持CGI、怎么支持HTTP1.1新特性等。
技巧:项目描述过程中,面试官会留意项目出现的技术名词,然后一一会深入提问,你一定要对自己的项目熟悉,不单要知道“怎样做”,还要知道“为什么要这样做”。
6、最后一道是开放性题目:如何鉴别垃圾诈骗信息并揪出犯罪份子(我一直以为揪出犯罪份子是公安局的事…)。
这题没有标准答案,但你不能不回答,讲讲你对这题目的了解和分析。
总结:如果面试中能较完整地回答八成以上问题,那就充满信心等待下一面。