一面,约1h
客户端还是挺喜欢问八股的,都挺简单,全都防住了,一个一个接力式
部分问题可能记不起来,顺序也记不得了
- 讲一下哈夫曼编码
- 说一下进程与线程的区别?知道协程吗?
- 说一下TCP的三次握手过程?
- 讲一讲TCP的滑动窗口
- 最多能建立多少条TCP连接?
- 为什么需要三次握手?
- 讲一下指针和引用的区别?
- Java有哪些数据类型?
- 说说AVL?
- 说一下什么是堆,堆是怎么维护的,以及堆排是怎么实现的
- 死锁的条件,什么情况下会产生死锁?
- 数组和链表有什么区别,应用场景有什么区别?
- 服务器端是如何区别每一个TCP连接的?(这里一开始没理解啥意思,后来换了一个说法,才知道,想问的是用ip地址和端口来区别)
- 讲讲项目,问了项目是干啥的,简历上提及到的一两个有关概念。
- 在项目过程中遇到过什么困难,如何解决的
- 有没有安卓或者ios的开发经验
- 算法:不算难,给了20min
第一个是手撕快排
第二个是最长回文串,力扣第5题
用dp来做,但是没写完,面试官最后看了说,再给点时间你应该能写完,就过了。
提问环节:问了一下base,以及部门的工作以及总体评价;面试官问了一下实习时间。
感觉dp做的还是太少了,需要强化
许愿二面
二面 约40min
我没想到问的那么快。有点慌。这个面试官看起来级别有些高。基本都是结合场景,项目来提问
- ngix是如何将请求进行转发的?
- http请求头
- 指针和引用的区别
- c++如何防止内存泄露(智能指针),需要注意什么问题
- c++有什么检测内存泄露的工具?
- tok-k问题。logk是最坏的情况,那实际应该是多少
- 样本估计整体的数学问题。
没有算法
感觉有点凉。。。问的时间好短,还没有算法。感觉这个面试官很喜欢诱导你犯错,如果对答案不自信,很容易动摇。
许愿三面