小红书数据库平台开发一面 3.20
1.上来先共享屏幕,给我发了一道 leetcode,leetcode 300,最长递增子序列,dp 秒了。说写的太快了又给了一道 leetcode 114,我用递归写的的,卡住了报空指针,leetcode 也不会调试。然后就没让我写,开始面试。
leetcode300 是二叉树的前序遍历变成一个链表结构,只需要知道前序下面最后一个节点也就是最右边的节点,然后拼接到右边就可以了。
2 TCP、UDP 协议的区别?
说了 TCP 和 UDP 在传输速度、安全、可靠性、报文开销和应用场景。
3.TCP 为什么可靠? 详细说了几点
确认号和序号、超时重传、流量控制、拥塞控制、三次握手和四次挥手来保证可靠性。这几个也详细说了
4.TCP 发送方如果发送速度很快,是如何解决的?
TCP 字段是有一个流量控制,接收端会将自己的窗口之放入到报文中,发送端收到之后根据这个值修改自己的发送窗口。
5.进程、线程、协程的区别?
进程是系统分配资源的最小单位,线程是 CPU 调用的单位,协程是轻量级的线程。
6.并发情况下面,使用上面三种有什么优缺点?
7.对于进程、线程、协程又聊了其他的,有没有什么中间件是支持多进程的
支持多进程的架构是 nginx、后端 mq、Redis 都是支持多进程的。
8 同步和异步的区别
操作系统课讲过
9.异步是如何拿到结果的
通过回调函数拿到结果的,感觉可以讲一讲前端的 async 和 await
10 实习期间的业务,问了几个问题
爬虫业务和消息模块的重构
11 除了 Java 还会其他语言吗?
12 本科期间还做过什么项目,说了上学期 TCP/IP 的课程设计、数据大屏、校园 app。
13 上一家公司为什么离职
反问: 点评一下我今天的面试表现、部门的主要业务(做基础架构的)、今天面试什么时候反馈(一周内)
=====
后序已经挂了,给HR发消息不回,没有下文了,感觉是KPI面试
#小红书#牛牛的面试专栏,希望自己在25年可以拿到一份大厂的SP Offer 你的点赞和收藏都是我持续更新的动力