阿里一面.
一开始是晚上七点半,直接一个电话过来就开始面试》。。
窝说不方便,又约了周末下午或者晚上,然后周六上午来了电话....。。。。于是又约了周天下午。。。
然后窝从两点开始等。。。等到六点半。。。决定去教室写报告。。。然后刚到教室电话就来了orz...
先是常规的简单自我介绍。。
然后先是问了一些cpp的问题。。
问了一些cpp的问题:
先是问了c和cppneicu内存的区别。。。我:????? 内存区别什么鬼。。
然后就回答了malloc,free,delete,new的区别。。。好像就是这个问题。。。
第二个问题是什么时候会内存泄露。。
我说申请了内存没释放blablabla...
第三个问题是cpp哪些函数不能为虚函数:
我说构造函数。。。面试官姐姐问还有呢。。。。窝说不知道了orz...
第四个问题问了指针和引用的区别。。。
我回答了三方面。。。初始化。。。赋值。。还有类型转化上。。。
面试官姐姐问还有呢。。。。我:喵喵喵喵喵?。。。不知道了。。。给点提示可?
面试官姐姐说在作为参数传递的时候。。。
我说传数组只能用指针。。不能用引用。。。
第五个问题问了栈和堆在xx方面的区别。。。(xx我不记得原词是什么了。。大概是说使用场合?)
我说一个是系统用。。一个是程序员用。。。(???
第六个问题是问我面向对象的特性。。。
我说是继承。。封装。。多态。。个人认为最核心的是多态blablabla...
然后面试官姐姐就问cpp多态的体现。。。
我说分动多态和静多态。。。。。。然后把模板,,,函数重载。。。虚函数什么的说了一下。。。
这大概是第一部分。。。第二部分问了我数据结构。。。
先问了我堆排。。。
给我一串无序数。。让我构造一个大根堆。。。。
我。。竟然。。。一脸智障。。。。。。
真的不记得了。。。。虽然记得这题数据结构考试还考过吧。。。
最后在面试官姐姐的提示下。。蒙出来了。。。人生污点啊。。。orz
然后问我复杂度。。。稳定性。。。
又问了快排。。让我给他讲一下快排。。。
我就说了取pivot的几种策略。。。然后复杂度的平均和最坏情况。。。以及避免最坏情况的方法。。。
然后面试官姐姐问我最坏情况的数据是怎么样的。。。
这个经典问题我竟然也。。。。(人生污点*2
答案是基本单调的。。。
然后问我一个有序的数组。。找index=value的值。。数组没有重复元素。。。
其实一开始没说单调。。。我问了一句她才说漏了个条件2333.
单调。。那就二分呗。然而我口头描述了下二分的代码。。。
就是l和r的值什么要注意一下吧。。。
然后问我有单调有重复怎么办。。。
一开始没过脑子。。。说了个两次二分出一个区间。。事实证明是错误的。。。
然而实际上只要稍微修改下二分代码就好了。。。。
之后问我一棵二叉树。。如何in-place 按照前序遍历转化成单项链表。。。想了一会。。。还是不会orz。。。
这大概是leetcode的套路题吧。。。由于觉得leetcode太恶心。。。刷了80+就没再刷了。。。QAQ
然后第三部分。。。问我我OS的东西。。。
问我了内核态和用户态的区别。。。
然后问我linux的blablabla....我说我不会QAQ 面试官姐姐就没再问这方面了。。。
后来面试官姐姐说这方面她也不太懂。。。
第四部分。。。问了我数据库。。?
就问了一个 事务的特性。。。
我就回答了acid...每个解释了一下。。。
然后就没了吧。。。