补一个字节跳动和腾讯的面经
一个多月前面的,记不太清楚了。
字节跳动:
一面(一个半小时):
- 树的右视图,递归和非递归的实现
- 相交区间合并:[1,5],[2,7],[4,9].......[起点,终点]把有相交的区间合并为一个
- 单例模式
二面(三十几分钟)
- 检测链表是否有环
三面(二十几分钟)
- 感觉就是在随便聊聊,我基本上都没怎么说话,都是面试官再说。面试官真的超级热情,我最后问了他一个问题,他很详细的给我回答,差不多讲了10分钟。
理论题记不大清楚了,大概有dns,tcp,浏览器输入一个url的过程,进程和线程的区别等等,算法题都会要求跑测试用例,所以需要自己去构建树和链表这些。
腾讯:
一面(半个小时)
- 双重指针
- 拥塞控制
- tcp,为什么是三次和四次
- 如何快速回收tcp的time_wait状态
- fork如何区分父子进程
- 过桥问题
二面(半个小时)
- dijkstra
- 输出数组中没有相邻的相同数的数,例如[1,2,2,1,3,4]应该输出的是3,4
- dp,[1,2,3,4,5,6,7]输出哪些组合可以组成7
- kmp
- 平时团队协作的时候会遇见什么问题,如何去解决(面试官问这个的时候我感觉凉了,以为他想敷衍一下就结束了😂)
腾讯这边没有要求写出算法来,大概说一说思路就可以了。