南京一家互联网公司,来学校招聘,招聘会上投了简历直接免笔试和第一轮面试(好神奇),体验不错,面试官很和蔼,有几个问题不清楚,一直引导我回答,瞬间不害怕了,觉得面试也没自己想的那么恐怖,好好想好好答实在不知道就说不知道就完事儿了。
1.循环链表怎么判断已经循环过一次?
记录起点,当第二次经过时已经循环过一次;
(没太懂,感觉有点太简单了,面试官可能不是想考我这个。。。)
2.int有多少字节 ?4个
能表示的数字范围?-31次方到31次方 - 1
为啥减1?有个0
3.用过哪些STL?容器,例如vector,map,list
容器包括哪几种?序列式容器和关联式容器
各自的优点?
不是很清楚,就答了序列式实现较简单,关联式删除操作不会导致迭代器失效。。有哪位朋友知道答案或许可以点拨我一下o(╥﹏╥)o
关联式容器底层实现?答了红黑树
4. 生成一个可执行文件的四个阶段及每个阶段具体干了啥?
四个阶段是啥我知道,但具体干了啥......
总之凭印象答的,答得很简略
预处理:将代码中的头文件及宏定义做分析和处理,生成预编译文件
编译:生成一个汇编文件
汇编:生成一个可重定位目标文件
链接:将多个目标文件及需要的库链接起来,形成可执行文件
5.说说多态?
简单来说多态就是用一个接口实现多种功能;不同继承关系下的子类调用同一个函数实现不同动作;
分为静态和动态,静态多态主要是重载,动态多态利用虚函数表机制实现
虚函数表机制具体怎么实现?
说了子类会继承父类虚函数表
若重写了父类虚函数,则将虚函数表内地址改为新写的函数地址;
6.说说三次握手过程
这个重点复习过,答得还行;
7.OSI七层模型及各层对应的协议;
参考这个博客(https://blog.csdn.net/qq_33269009/article/details/90266564)
8.数据库增删查改操作
insert delete select update
(说了数据库不太了解面试官就真的问得好简单呀呜呜爱了)
9.软件工程学了些啥?
讲了讲几个模型,面试官又让说明瀑布模型的过程;
10.用过哪些排序?
答用冒泡和快排比较多,让讲了讲快排的实现过程;
11.用过哪些查找?
答二分查找,让讲了实现和条件;
条件是要有序
12.印象最深的算法
13.大学最有成就感的经历
14.如何学习C++
15.如何看待加班和996
16.未来打算
还有些基础问题忘记了,总体答得还行吧,面完十多分钟发短信说通过了,后面好像要做个什么测评。。。
总之,许愿OFFER,给俺的春招之路打响第一炮,冲鸭