广联达软件开发:

一面:

第一个问题先问学过数据结构是吗,那讲一下快速排序,我就根据老师讲的快速排序的算法演示了一遍,然后又联想到杨老师说的找第K个最小的数,原理阐述了一遍,然后问复杂度是多少;

第二问题问你看过STL源码是吧(简历上项目就是剖析过STL源码):给vector里面添加元素,我说push_back或者insert;然后问现在有一万个数据,往vector里面放,问时间复杂度,我当时想的是push_back的时间度复杂度是O(1),但是一万个数据,不断地插入,肯定会调用resize()或者reserve();然后就根据自己理解给了个答案,面试官说已经很接近了答案就下一问题了;

第三个问题问你知道红黑树吗?我说有了解,大概讲了一下红黑树的原理,红孩子黑孩子什么的,从一个结点出发黑孩子个数是相等的这样的,因为之前杨老师上课的时候说过腾讯的面试题,说插入一个结点最多旋转几次,我就提了一下说我之前有看到有关红黑树的面试题,面试官说我现在让你写旋转函数你会不会崩溃,我佯装镇定说不会呀,一时可能写的不是很完美,但多考虑考虑应该差不多可以完成吧……

第四个问题问你了解操作系统的死锁吗?有遇到这种情况吗?其实我内心是崩溃的,大二学的操作系统都还给老师了,正好施磊老师刚见过单例模式,然后是互斥锁,我就把话题往单例模式上扯,就把老师讲的五种情况一一递进的说出来,面试官说OK呀还不错~

第五个问题问你知道用户态和内核态吗?正好前天苏峰老师刚讲过系统调用,我就把系统调用的过程描述了一遍。

第六个问题面试官出了个逻辑推理题,海盗分金子问题。

其余就是些比较主观的问题需要临场发挥,所以很庆幸也很幸运问到的都是这几天刚刚老师复习的,所以的所以上课好好听课,好好跟着老师复习。

二面的话就问你觉得自己的优点和缺点有哪些,我说上帝造人的时候在人的前面和后面放了各放了一个大兜,前面用来装优点,后面用来装缺点,那么我的缺点一定是有的,所以我会多回头看看。

最后感谢所有老师们的谆谆教导,还有同学们一起加油!