今日头条java工程师社招面经(接上)

三面:


1 介绍一下项目

2 你谈到的并发技术,chm和countdownlatch怎么使用的

3 为什么要这么处理,使用线程池是不是也可以。我说也可以

4 操作系统的进程通信方式,僵尸进程和孤儿进程是什么,如何避免僵尸进程,我说让父进程显示通知,那父进程怎么知道子进程结束了,答不会。

5 计算机网络TCP和UDP有什么区别,为什么迅雷下载是基于UDP的,我说FTP是基于TCP,而迅雷是p2p不需要TCP那么可靠的传输保证。

6 他说不对,我说是不是因为要建立连接,开销比较大,他说不对

7 我说p2p的发送节点很多,所以不是那么需要各种传输保证,他说不对。

8 我说TCP会自动分包而TCP可以自己定义数据长度。。他还是说不对。

最后他说算了。我们问下一个吧。

9 操作系统的死锁必要条件,如何避免死锁。

10 写一个LRU的缓存,需要完成超时淘汰和LRU淘汰。

我说用lhm行不行,他说用linkedlist和hashmap可以。

于是我就写了put和get函数,进行了队头队尾操作。

他说get复杂度会不会太高,我瞎掰了半天没找到办法,他说那就这样吧,今天面试到这。

HR面:

1 兴趣爱好

2 三年到五年的职业规划

3 意向公司和城市

4 工作经历和收获

5 工作中最大的困难

6 为什么换公司,

7 你的缺点和优点

8 你觉得你比其他人优秀的地方说三个

9 为什么想来我们部门

10 巴拉巴拉

差不多这样就结束了,希望一切顺利吧。

#字节跳动##面经##社招##Java工程师#
全部评论
不懂就问,chm是啥啊🤣
1 回复 分享
发布于 2021-03-16 23:24
我看到一个 两年前的帖子 题目一摸一样 牛客网好水啊
1 回复 分享
发布于 2021-03-31 18:08
用udp是不是和断点续传有关?因为要支持多线程传输?
1 回复 分享
发布于 2021-04-06 13:05
楼主是什么部门
点赞 回复 分享
发布于 2021-03-14 05:16
楼主工作几年了?
点赞 回复 分享
发布于 2021-03-14 10:22
所以迅雷的那个是因为什么呢?
点赞 回复 分享
发布于 2021-03-14 16:57
LRU那个,可以使用linkedlist作为队列,hashmap存储是否有数据,put的时候放在list队尾,超出容量remove队头,get的时候从map取出来然后再放在队中。这种get应该是O(1)的,复杂度很高吗?
点赞 回复 分享
发布于 2021-03-15 14:15
Tcp nat穿透难度大,udp 难度小
点赞 回复 分享
发布于 2021-05-21 01:58

相关推荐

2 46 评论
分享
牛客网
牛客企业服务