阿里巴巴-面试详细记录

阿里巴巴一面:

1.有一个类A,类B和类C分别公有继承类A,是否可以用dynamic_cast把类B转化为类C。我说不能的,因为类B和类C不是一个继承层次,不能用dynamic_cast进行转换的,会抛出异常。然后它问我强制类型转换中有个reinterpreter_cast,使用它会不会抛出异常。我说,reinterpreter_cast只是告诉编译器这个在编译时需要对内存中的内容进行重新解释,并不会破坏数据的结构,不会抛出异常。

2.const关键字都有什么作用,你能依次列举出来吗?这个挺好列举的,然后我依次在使用const的各种场合枚举了一遍。他问我能够把const常量赋值给相应的变量,我说不能,那样会编译错误的。一般用const_cast关键字去除常量的常量性,但是const_cast只是让把const常量赋值给变量成为可能,并不会改变原const常量的常量性。

3.类中的构造函数能否为虚函数?类中的析构函数能否为虚函数?类中static静态函数能否为virtual?前面那两个挺好回答的。第三个问题可以稍微想下就能够回答了。static是属于类一级的,一个类的所有对象共享该函数,不能用this指针指向,而虚函数却告诉编译器,函数的具体

操作需要根据运行时指向的对象调用相对应的函数,需要由this指针指向,所有相互之间矛盾。因此static静态函数不能为virtual。然后面试官就点点头。

4.操作系统中cache的作用。一般人都能够回答得出cache的一般作用,但是要让面试官满意,必须对问的问题有个深入的解析。我说出了cache的作用,然后从空间局部性和时间局部性来指出cache的作用。面试官听完我说的,点点头说,非常对。然后就开始问我其他的了。

5.我笔试题中有一道关于LRU换页机制原理的题算错了。他说,这道题你算错了,你意识到了吗?其实这个我在做题的时候也跟另外一种方式弄混了,把结果算错了。他问我能否重算一遍,我想了想,能的。其实我做题的时候就是因为一个知识点弄混了,我抱着试试看的态度重算了下,用另外一种跟我笔试时候混淆的方法,小心翼翼的算了下,竟然算对了。让我挺意外的,感觉这应该算是人品了。幸亏笔试后我同学提醒我,否则如果我面试时候还是坚持说自己是对的,就蛮尴尬的。

6.不知道阿里巴巴一面是否问到数据库,好像每次面试都会遇到数据库,而且每次必见索引,让我相当惊讶。在我面去哪儿网的时候,我简历上明明写着了解数据库,没想到他们还问了我蛮多数据库方面的题,让我感觉有点难受。面去哪的时候他问我索引的底层实现是什么,什么时候会用到索引,索引的作用,还有一个关于索引的,说是假如一个数据库的主键为ID定义时候说是incream,能够支持随机ID号的插入。还有就是一个SQL查询语句的写法,查询出两张表中,表A含有而表B不含有的ID号。不能用exist和in,表示不太会。有点像在刁难。好像阿里巴巴没有问到这些。不过这些在面试中还是蛮重要的,需要有所了解,尽量能够答好些,毕竟优秀的人那么多,多答好一道题,多一份把握。

7.问了我一道算法题。有许多区间,区间之间可能会相互重叠,怎样去掉一些区间,让他们彼此之间都不重叠,而且剩下的区间总数尽可能的多。我想了想,感觉能够用贪心去做,需要对所有区间进行一次排序,然后依次往后贪心,剩下的区间相互之间不相互重叠,剩下的区间数最大。他说,你说的感觉蛮对的。你能否用数学归纳法证明下。我想了想,就证明了下,虽然证明出来了,但是不是特别像真正意义上的数学归纳法,面试官说如果你考研的话或许能够弥补你在这方面的空缺。后来又说,研究生能够证明的也没几个。

8.最后问了一道编码题,需要编出代码的。给你两个栈,一个栈中的数据无序,一个空栈,要求你把栈中的所有数据放到空栈中,而且使得空栈中的数据有序。我想了想,感觉蛮像冒泡排序的,每次倒出无序栈中的所有数据放到有序栈中,然后随便记录下其最大值,假

设倒了N个,那么把无序栈倒空后,需要把最大值之外的N-1个全部倒入无序栈,然后把最大值放入有序栈。就是一个冒泡排序,不断冒泡,知道无序栈为空为止,代码并不难写。

9.中间好像问了一个关于strcpy函数的写法,这个好像也是每次面试必问的。蛮简单的,参照下标准写法就知道了。

10,STL好像也问了一些,如果你简历上有所提及STL。map和hashtable好像是必问的。问你map底层的实现,只要答是红黑树即可,然后又问,为什么要用红黑树?这个需要对红黑树稍微有所了解。不问问得很深。然后问下hash,这个也需要有所了解。变态的是去哪儿二面竟然让我写红黑树,感觉他真心不想要人了,百般刁难,这种公司可以忽略不计,只要对STL稍微有所了解即可。

11.STL知识点。问我是否知道deque底层的实现。我以前看到STL相关的书,好像deque底层实现比较复杂。是一块一块的,块内是连续的内存空间,块之间是用指针。所以deque支持随机访问,效率却远远不及vector。然后他就没继续问下去了。感觉只要大概知道其中的原理即可了。

总结:以上是我在阿里巴巴的一面,感觉答得都蛮好的。阿里的一面偏重基础,C++问得蛮多的,类,继承,还有多态是C++面试重点,对四种强制类型转换必须要有所了解,知道什么情况下会抛出异常,在什么情况下运用。面技术面,如果没有什么项目经验的话,编程以及算法都要好好复习下,多看下经典面试题,能够让你面对面试官稍微有些自信。具体的表现还得看临场的发挥,不过保持淡定比较重要。毕竟没有人知道下一刻会面对什么,只有好好的做好现在就可以不用那么遗憾了。另外就是在面试的时候要突出自己的优势,在某一方面让别人能够认可你。如果没有很多项目经验的话,必须要基础特别扎实的。否则离offer就会很远的。

阿里巴巴二面:

阿里巴巴二面是技术面,不会涉及具体的知识点。只要是面试官看你人怎么样?是否符合他们公司的团队文化,是否符合他们公司的要求(勇哥说的,感觉特别对)。阿里二面我的时候问了我蛮多个人经历的,另外就是你简历上的每一条,达到技能,小到自我评价他都会仔细的去问。比方说,你说你喜欢挑战,他就问你你是怎样看出来是喜欢挑战的。他问的那些我都回答的蛮流畅的。比较不好的一点是,我简历上写了理解计算机体系结构,然后面试官抓住那个不放。让我说下计算机体系结构是什么样子的,问我是否知道i386系统,知道硬盘分哪几种,如何向磁盘中写文件在没有操作系统的情况下。我当时就蒙了,突然感觉他所说的体系结构跟我想象中的差别那么大啊。我直接说我不会。然后他问了其他几个不是很难的知识点,然后问我有没有什么问题想问他。我想了想,就问了下,刚才你说硬盘分多少种我以前没有接触过,你能否可以给我讲下,他就给我讲了挺多硬盘的类型,硬盘对程序优化所起到的作用,说了挺多的,只是我一句都不懂。然后我就没什么要问的,他就让我回去等消息。感觉唯一没有答好的是问我那些关于计算机体系结构的东西。我后来想了想,或许二面面试官最终要我的可能就是看重我一点,就是对未知的知识充满好奇,他面试的时候问我是怎么看出来这一点的,然后我就说了我实习的经历。然后他就点点头。可能我最后对自己不太熟悉的知识点再向他请教让他更加相信我这一点。不管怎样,阿里巴巴的面试都已经结束了,也拿到了梦寐以求的offer,大学也没什么其他的期待了。三年多逃课生涯,整天窝在实验室写程序的经历历历在目,有付出就有回报,看过的那么多的人,还有在背后的那么多不为人知的努力。有付出就有回报,现实让我更相信这一点。大四了,感觉离毕业不远了,

期待阿里的工作生涯让我人生有不一样的感受。找工作的经历是蛮痛苦的,离开了世俗的宣讲,不用再去忙着去寻找将来的未知,静静的去体会一个人的惬意,或许也是对曾经那么多岁月努力付出的一个最好的诠释。曾经那么疯狂的迷恋编程,抛弃了一切专业的课程。当有一天真正实现了自己的梦想,突然又有点遗憾,感觉似乎大学有那么多不完整,感觉需要去认真听听老师讲的每一节课,大学毕业了,再也不会有人会那么认真给你讲课了。突然有点留恋。另外就是关于竞赛的一些感想,以前去笔试那么多公司的时候,包括去面去哪儿网的时候根本就没有人问及你比赛的证书,也没有人问及你比赛的经历,心情挺失落的。感觉大学那么多年的比赛经历注定什么都没有留下,开始感觉那些经历是那么的多余。当有一天,阿里巴巴给我offer,我才醒悟过来,是曾经比赛的经历让我有机会拿到阿里的offer。突然感觉,只要是真心的努力,都会得到回报的,而且是双倍的回报。当面对那么多挫折时,你一定要坚定,总会有一个能够欣赏你的人。好好的去努力,人生因为曾经的那么多奋斗而不同!坚持你所爱的领域,努力下去,梦想终将可以得到实现的。这些是我个人的经历以及感悟,

希望对看到这篇文章的人有所触发。还有就是上帝给你关上一扇窗的同时会给你开启一扇门。金山的两次笔试都没有拿到面试的资格,却让我有机会去参加阿里巴巴,去哪儿网还有人人的笔试。然后有机会拿到想要的offer。有时候感觉人生真心如梦,也或者是有努力就有回报吧!

阿里巴巴一面:

1.有一个类A,类B和类C分别公有继承类A,是否可以用dynamic_cast把类B转化为类C。我说不能的,因为类B和类C不是一个继承层次,不能用dynamic_cast进行转换的,会抛出异常。然后它问我强制类型转换中有个reinterpreter_cast,使用它会不会抛出异常。我说,reinterpreter_cast只是告诉编译器这个在编译时需要对内存中的内容进行重新解释,并不会破坏数据的结构,不会抛出异常。

2.const关键字都有什么作用,你能依次列举出来吗?这个挺好列举的,然后我依次在使用const的各种场合枚举了一遍。他问我能够把const常量赋值给相应的变量,我说不能,那样会编译错误的。一般用const_cast关键字去除常量的常量性,但是const_cast只是让把const常量赋值给变量成为可能,并不会改变原const常量的常量性。

3.类中的构造函数能否为虚函数?类中的析构函数能否为虚函数?类中static静态函数能否为virtual?前面那两个挺好回答的。第三个问题可以稍微想下就能够回答了。static是属于类一级的,一个类的所有对象共享该函数,不能用this指针指向,而虚函数却告诉编译器,函数的具体

操作需要根据运行时指向的对象调用相对应的函数,需要由this指针指向,所有相互之间矛盾。因此static静态函数不能为virtual。然后面试官就点点头。

4.操作系统中cache的作用。一般人都能够回答得出cache的一般作用,但是要让面试官满意,必须对问的问题有个深入的解析。我说出了cache的作用,然后从空间局部性和时间局部性来指出cache的作用。面试官听完我说的,点点头说,非常对。然后就开始问我其他的了。

5.我笔试题中有一道关于LRU换页机制原理的题算错了。他说,这道题你算错了,你意识到了吗?其实这个我在做题的时候也跟另外一种方式弄混了,把结果算错了。他问我能否重算一遍,我想了想,能的。其实我做题的时候就是因为一个知识点弄混了,我抱着试试看的态度重算了下,用另外一种跟我笔试时候混淆的方法,小心翼翼的算了下,竟然算对了。让我挺意外的,感觉这应该算是人品了。幸亏笔试后我同学提醒我,否则如果我面试时候还是坚持说自己是对的,就蛮尴尬的。

6.不知道阿里巴巴一面是否问到数据库,好像每次面试都会遇到数据库,而且每次必见索引,让我相当惊讶。在我面去哪儿网的时候,我简历上明明写着了解数据库,没想到他们还问了我蛮多数据库方面的题,让我感觉有点难受。面去哪的时候他问我索引的底层实现是什么,什么时候会用到索引,索引的作用,还有一个关于索引的,说是假如一个数据库的主键为ID定义时候说是incream,能够支持随机ID号的插入。还有就是一个SQL查询语句的写法,查询出两张表中,表A含有而表B不含有的ID号。不能用exist和in,表示不太会。有点像在刁难。好像阿里巴巴没有问到这些。不过这些在面试中还是蛮重要的,需要有所了解,尽量能够答好些,毕竟优秀的人那么多,多答好一道题,多一份把握。

7.问了我一道算法题。有许多区间,区间之间可能会相互重叠,怎样去掉一些区间,让他们彼此之间都不重叠,而且剩下的区间总数尽可能的多。我想了想,感觉能够用贪心去做,需要对所有区间进行一次排序,然后依次往后贪心,剩下的区间相互之间不相互重叠,剩下的区间数最大。他说,你说的感觉蛮对的。你能否用数学归纳法证明下。我想了想,就证明了下,虽然证明出来了,但是不是特别像真正意义上的数学归纳法,面试官说如果你考研的话或许能够弥补你在这方面的空缺。后来又说,研究生能够证明的也没几个。

8.最后问了一道编码题,需要编出代码的。给你两个栈,一个栈中的数据无序,一个空栈,要求你把栈中的所有数据放到空栈中,而且使得空栈中的数据有序。我想了想,感觉蛮像冒泡排序的,每次倒出无序栈中的所有数据放到有序栈中,然后随便记录下其最大值,假

设倒了N个,那么把无序栈倒空后,需要把最大值之外的N-1个全部倒入无序栈,然后把最大值放入有序栈。就是一个冒泡排序,不断冒泡,知道无序栈为空为止,代码并不难写。

9.中间好像问了一个关于strcpy函数的写法,这个好像也是每次面试必问的。蛮简单的,参照下标准写法就知道了。

10,STL好像也问了一些,如果你简历上有所提及STL。map和hashtable好像是必问的。问你map底层的实现,只要答是红黑树即可,然后又问,为什么要用红黑树?这个需要对红黑树稍微有所了解。不问问得很深。然后问下hash,这个也需要有所了解。变态的是去哪儿二面竟然让我写红黑树,感觉他真心不想要人了,百般刁难,这种公司可以忽略不计,只要对STL稍微有所了解即可。

11.STL知识点。问我是否知道deque底层的实现。我以前看到STL相关的书,好像deque底层实现比较复杂。是一块一块的,块内是连续的内存空间,块之间是用指针。所以deque支持随机访问,效率却远远不及vector。然后他就没继续问下去了。感觉只要大概知道其中的原理即可了。

总结:以上是我在阿里巴巴的一面,感觉答得都蛮好的。阿里的一面偏重基础,C++问得蛮多的,类,继承,还有多态是C++面试重点,对四种强制类型转换必须要有所了解,知道什么情况下会抛出异常,在什么情况下运用。面技术面,如果没有什么项目经验的话,编程以及算法都要好好复习下,多看下经典面试题,能够让你面对面试官稍微有些自信。具体的表现还得看临场的发挥,不过保持淡定比较重要。毕竟没有人知道下一刻会面对什么,只有好好的做好现在就可以不用那么遗憾了。另外就是在面试的时候要突出自己的优势,在某一方面让别人能够认可你。如果没有很多项目经验的话,必须要基础特别扎实的。否则离offer就会很远的。

阿里巴巴二面:

阿里巴巴二面是技术面,不会涉及具体的知识点。只要是面试官看你人怎么样?是否符合他们公司的团队文化,是否符合他们公司的要求(勇哥说的,感觉特别对)。阿里二面我的时候问了我蛮多个人经历的,另外就是你简历上的每一条,达到技能,小到自我评价他都会仔细的去问。比方说,你说你喜欢挑战,他就问你你是怎样看出来是喜欢挑战的。他问的那些我都回答的蛮流畅的。比较不好的一点是,我简历上写了理解计算机体系结构,然后面试官抓住那个不放。让我说下计算机体系结构是什么样子的,问我是否知道i386系统,知道硬盘分哪几种,如何向磁盘中写文件在没有操作系统的情况下。我当时就蒙了,突然感觉他所说的体系结构跟我想象中的差别那么大啊。我直接说我不会。然后他问了其他几个不是很难的知识点,然后问我有没有什么问题想问他。我想了想,就问了下,刚才你说硬盘分多少种我以前没有接触过,你能否可以给我讲下,他就给我讲了挺多硬盘的类型,硬盘对程序优化所起到的作用,说了挺多的,只是我一句都不懂。然后我就没什么要问的,他就让我回去等消息。感觉唯一没有答好的是问我那些关于计算机体系结构的东西。我后来想了想,或许二面面试官最终要我的可能就是看重我一点,就是对未知的知识充满好奇,他面试的时候问我是怎么看出来这一点的,然后我就说了我实习的经历。然后他就点点头。可能我最后对自己不太熟悉的知识点再向他请教让他更加相信我这一点。不管怎样,阿里巴巴的面试都已经结束了,也拿到了梦寐以求的offer,大学也没什么其他的期待了。三年多逃课生涯,整天窝在实验室写程序的经历历历在目,有付出就有回报,看过的那么多的人,还有在背后的那么多不为人知的努力。有付出就有回报,现实让我更相信这一点。大四了,感觉离毕业不远了,

期待阿里的工作生涯让我人生有不一样的感受。找工作的经历是蛮痛苦的,离开了世俗的宣讲,不用再去忙着去寻找将来的未知,静静的去体会一个人的惬意,或许也是对曾经那么多岁月努力付出的一个最好的诠释。曾经那么疯狂的迷恋编程,抛弃了一切专业的课程。当有一天真正实现了自己的梦想,突然又有点遗憾,感觉似乎大学有那么多不完整,感觉需要去认真听听老师讲的每一节课,大学毕业了,再也不会有人会那么认真给你讲课了。突然有点留恋。另外就是关于竞赛的一些感想,以前去笔试那么多公司的时候,包括去面去哪儿网的时候根本就没有人问及你比赛的证书,也没有人问及你比赛的经历,心情挺失落的。感觉大学那么多年的比赛经历注定什么都没有留下,开始感觉那些经历是那么的多余。当有一天,阿里巴巴给我offer,我才醒悟过来,是曾经比赛的经历让我有机会拿到阿里的offer。突然感觉,只要是真心的努力,都会得到回报的,而且是双倍的回报。当面对那么多挫折时,你一定要坚定,总会有一个能够欣赏你的人。好好的去努力,人生因为曾经的那么多奋斗而不同!坚持你所爱的领域,努力下去,梦想终将可以得到实现的。这些是我个人的经历以及感悟,

希望对看到这篇文章的人有所触发。还有就是上帝给你关上一扇窗的同时会给你开启一扇门。金山的两次笔试都没有拿到面试的资格,却让我有机会去参加阿里巴巴,去哪儿网还有人人的笔试。然后有机会拿到想要的offer。有时候感觉人生真心如梦,也或者是有努力就有回报吧!


相关文章

  • 最新九月百度人搜,阿里巴巴,腾讯华为京东360笔试面试二十题
  • 引言 自发表上一篇文章至今(事实上,上篇文章更新了近3个月之久),blog已经停了3个多月,而在那之前,每月都不曾断过.正如上一篇文章支持向量机通俗导论(理解SVM的三层境界)末尾所述:"额,blog许久未有更新了,因为最近实在忙 ...查看


  • 2014我的一个月安全类岗位求职经历(腾讯,百度,阿里,360,金山等)
  • 本帖最后由 idhyt 于 2013-10-21 22:37 编辑 转载请标明出处,谢谢. 另: 本帖子只代表个人观点,如果有用词不当或者不经意触犯到别人利益,望指出,谢谢. 信息安全行业相关资料很少,笔试题网上也根本就找不到,详细说说我的 ...查看


  • 关于程序员求职简历_求职招聘_酷勤网
  • 最近在网上看见了一些关于程序员如何写求职简历的博客,还有之前也收集过一些优秀的简历,在此做个整理. 同时我从这些资料里我总结出,一份简历最核心的两个要素:1. 向 HR 准确且高效地传递信息:2. 作为面试官考察个人能力的线索. 1. 一些 ...查看


  • [德国留学生就业]求职路上 小心那些"坑"
  • [德国留学生就业]求职路上 小心那些"坑" 6月21日,<楚天都市报>上一则"无业男发信息招模特 潜规则两名女大学生"引起了各界的高度关注.新闻中,吕某在网上发布消息,自称是广告公司老总, ...查看


  • 阿里巴巴的OracleDBA笔试题参考答案
  • 阿里巴巴的Oracle DBA笔试题参考答案+++++++++++++++++++++++++++++++++++++本文的阿里巴巴数据库面试题主要针对于Oracle DBA,题目可以是笔试题,也可以口头回答.以下题目,可根据自己情况挑选题 ...查看


  • 工行面试经验总结
  • 今天楼主去工行深分面试了,具体的流程前面已经有同学很善良地介绍了,我就不赘述了. 主要补充一些问题和感慨 1.两个面试室,不知道是不是按地区分的面试者,反正问题似乎有不少差别,主要是英语问题,一个常规,一个捉摸不透,到时各位亲看安排吧~ 2 ...查看


  • 阿里巴巴量化考核员工的价值观
  • 2008-02-15 19:33 走进阿里巴巴总部,仿佛置身金庸笔下的江湖,每个会议室的门上都写着"桃 花岛"."光明顶"之类的名字.公司很多员工,包括马云,都是金庸迷,因此, 他们员工考核的重要一块 ...查看


  • 面试技巧及常见问题
  • 本文由Iry20102012贡献 doc文档可能在WAP端浏览体验不佳.建议您优先选择TXT,或下载源文件到本机查看. 一.经典面试常见问题 希望各位能打印出来,认真地回答,每个问题准备多个例子,多个答案,最好能写出来,反复练习. 如果能够 ...查看


  • 阿里巴巴公司面试题目
  • 摘要:论坛里有程序猿发阿里电话面试题目,罗列在此,待俺一个一个解决掉-嘻嘻1.hashmap的内部实现机制,hash是怎样实现的,什么时候rehash2.java的内存管理3.分布式缓存的内存管理,如何管理和释放不断膨胀的session,m ...查看


热门内容