PDD秋招客户端1、2面 面经
服务端2面挂转岗客户端
一面
算法题
LeetCode 75:颜色分类(Sort Colors)。
2. 当前指针与右侧指针交换后,为什么当前指针不能立即向后移动?
3. 这段算法的时间复杂度和空间复杂度分别是多少?
死锁与并发
- 两个线程以相反顺序获取两把锁,可能发生什么?为什么?
- 程序直接运行一定会死锁吗?去掉中间的等待后,结论会变化吗?
- 死锁的四个必要条件是什么?分别如何对应到这段代码?
- 有哪些办法可以消除或规避死锁?
- 多个 goroutine 并发写同一个 map 会发生什么?
- 写操作和查询操作分别应该怎样加锁?为什么考虑使用读写锁?
网络与 HTTPS - 客户端请求一个 HTTPS 接口并把数据展示到页面,中间经历了哪些步骤?
- HTTPS 相比 HTTP 多了什么?主要解决哪些安全问题?
- TLS 如何保证数据不被篡改?数字签名的验证过程是什么?
客户端缓存 - 客户端只允许缓存固定数量的图片,如何优先保留最近使用的数据?
- 为什么不能只用数组实现?不同数据结构的复杂度有什么差别?
项目追问 - 这个项目做过哪些性能或成本优化?如何证明优化有效?
- 当多个系统对同一业务概念的定义不一致时,你会如何统一数据口径?
- 统一口径上线时,如何处理存量数据、兼容旧逻辑、校验结果和回滚?
二面
记不太清楚了,总之基本全是操作系统八股,客户端真的太看中操作系统了,也可能是lz不会java和c++面试官没其他东西问
参考来源:https://www.nowcoder.com/feed/main/detail/d401d03bff77486aa9da366a96a77d76
公众号进入网站体验更佳

