上周开始投简历,然后周四开始收到滴滴的面试通知,这是第一个面试通知,接着周五下午没课我就开始去图书馆复习,准备周一下午的面试,然后周五下午又收到百度面试通知,蛮开心的。因为一直觉得没有很好的学校,也没有出色的实习经历,也没有很高大上的项目,没有很大的信心。后来又去投了b站的简历,后来陆续收到面试邀请有头条、新浪、百度、盛大游戏、还有阿里巴巴,收到蛮多公司的面试邀请,我说句实话,蛮意外的。因为基本上这一周都在面试,还有课,一直也没有时间记录自己的面试记录。今天周五,有时间了,吃完饭,坐床上,听歌很舒服,写面试记录。。。因为面试太多了,而且还有很多重复的问题,我就都放在一起写了。很多问题都忘了,只能把想起来的记下来
//最终拿到了滴滴、美团、网易游戏和今日头条的实习offer,给我最深的感受就是大厂不仅要基础还要深度+项目+实习经历
1、进程和线程的区别(这个很重要,好多家都公司都问了,很重要)
2、建表的sql语句
3、tcp,udp区别
4、http协议
5、left join,right join
6、说10个Linux命令
7、最大连续子数组和
8、统计日志里面某个函数出现的次数(海量数据处理)
9、合并两个有序链表
10、Java反射机制
11、Java集合源码
12、override和overload
13、实习经历(收获、项目等)
14、头条刷新首页的协议(tcp)
15、视频的协议(udp)
16、用代码实现多线程的日志类
17、生产者消费者模型
18、使用两个vector实现一个栈
19、topk
20、寻找二叉树上两个节点的最近父节点
21、堆和栈(内存上谈)
22、define和const定义一个常量的区别
23、找链表的中点
24、旋转数组里找某一个数是不是存在
25、很多台服务器产生的日志,需要找出距离当前时间最近的1000条日志
26、算法复杂度
27、手写快排
28、sed和awk
29、创建线程的方式
30、epoll的et和lt
阿里巴巴(分布式存储与c++)
27、面向对象的?面向对象的特性?有什么优点,比面向过程的语言好在哪?
28、http有什么需要改进的吗
29、http与tcp相比而言,为什么在某些情况下需要使用http,有的情况下需要使用tcp(http底层协议是tcp)
30、在udp基础上如何实现tcp(这一块答的蛮好的)
31、为什么模版类里面不能存在虚函数(实际上问你虚函数原理)
32、http协议的get和post
33、假如有五个犯人12345,需要杀的顺序为1354,只有2存活;假如6个犯人,13526,4存活;现在问你假如有n个人最后谁存活(用链表处理简单,面试官告诉我还有更好的,我用的是最简单方法)
34、进程和线程的区别?程序里面的创建进程和线程有什么不同?资源如何分配?