文章来源:转载声明:https://www.nowcoder.com/feed/main/detail/799eb79c2c91421db62addf354dfee9b
春招第一个面试是团子给的
面试官人很好,说话给人一种很有条理的感觉,反而我的应答就很慌乱
1. 简单的问了简历上的两个项目,没深入问
2. 合并两个有序链表(迭代+递归)
3. 业务题,与list和map的使用有关(第一次做这种题直接懵了,回头想想其实很简单)
4. 垃圾回收算法,垃圾回收器
5. fullGC是什么,什么时候会触发(忘记了)
6. 数组和链表插入和删除的时间复杂度(回答错了,其实都是O(n),忘记了插入的时候要先查找),数组整体挪动元素的时间复杂度
7. git提交、拉取、合并等命令是什么
8. maven命令有哪些,都有什么用(确实用得少,只想起来两个)
9. 怎么排查慢sql,怎么优化
10. 用实际的sql语句考察:覆盖索引、回表查询、最左前缀法则
11. 死锁是什么,写一个死锁的场景(我以为说的是java的死锁,没想到问的是mysql的死锁,脑子抽了没想出来)
12. 为什么要使用springMVC,有什么好处
13. 设计模式:代理模式和装饰器模式是什么,有什么异同,spring中哪里用到了装饰器模式和代理模式
14. rabbitmq怎么保证消息从生产者端到消费者端不丢失
15. rabbitmq场景题,简单说就是用什么技术手段保证消息传递不重复,高可用,高性能
16. redis过期key的淘汰策略,细问了惰性删除中cpu是采用何种方式支持key的删除的(这个确实不懂)
17. 如何保证缓存和数据库的一致性