美团面经一二三面已offer
美团面试部门:到家配送 北京 岗位:后端开发(校招)
结束春招了,最后一篇面经。
美团面试主要问基础方面的,但是也会往深问,只背面经可能不太够,需要自己看书或者博客总结一些内容。
时间线:
- 3月12号笔试(第一题dfs写的,没全ac。其他题直接放弃了)。
- 3月24号一面。
- 二面由于个人原因推迟到4月8号。
- 三面4月8号
- 4月9号oc
美团一面:2小时10分钟(吐血,可能记得不是太全,时间实在太长了)
- 自我介绍 + 项目简单介绍
- 集合有哪些
- arraylist和linkedlist区别
- hashmap怎么扩容(多线程扩容为什么会死循环),put过程
- concurrentHashMap 1.7和1.8
- 接口和抽象类区别(如何选择? 答:has a 和 is a)
- JVM内存分区
- 新生代:eden,survivor_from, survivor_to
- 垃圾回收算法
- PretenureSizeThreshold,maxTenuringThreshold(默认15)
- JVM调优(不太会)
- 如何判断对象是否应该被回收(引用计数法,可达性分析)
- root根包括哪些
- CMS回收过程,优缺点
- G1回收过程
- 类加载过程(加载,验证,准备,解析,初始化)
- 双亲委派优点
- 七层模型
- 四次挥手过程(中间状态也要答)
- 为什么TCP能保证不丢失(滑动窗口,拥塞控制)
- HTTP和HTTPS的区别
- GET和POST区别
- mysql全家桶又来了,索引数据结构
- 为什么用B+树而不用hash和B-Tree
- InooDB和MyISAM的区别(事务,聚集索引,锁的粒度等)
- 回表,联合索引查询会不会用到索引系列问题
- 最左匹配是什么意思,联合索引建立索引过程
- 独占所,共享锁,乐观锁讲一下
- mysql分库分表?(不太会,随便说了一下)
- sql优化(不太会,只说了什么时候不会用到索引和慢查询)
- NIO是什么?buffer底层说一下(不会)
- Redis线程模型?多路复用讲一下,为什么redis很快
- 分布式锁有哪些?(zookeeper不太会. 说了说其他两个)
- 我没用过线程池,所以没问
- 线程和进程概念(共享哪些区域)
- 虚拟内存讲一下(分页)
- synchronized和Lock的区别
- volatile的作用(锁的东西没怎么问)
- 算法题:存储有[0,n)的数组,数组长度为len。只能交换数组里n和0的位置进行排序
- sql题:查询每个班级分数前三的学生sql(要用到子查询,没写出来。面试官让我下去看看)
美团二面:50分钟(二面有些东西问的会深一点,有的问题可能忘记了)
- 项目问题10分钟,问到了GeoHash
- synchronized底层实现(markWord,entryList,waitSet),synchronized怎么保证同一时刻只有一个线程获得对象的锁
- AQS底层实现(非公平锁,公平锁)
- Spring ICO,AOP介绍
- Spring用到了什么设计模式
- 单例为什么加锁,volatile什么作用
- hashmap什么时候用到了红黑树
- 介绍红黑树特点(不是严格意义平衡,插入删除最多两次自旋,时间复杂度O(logn)等),为什么不用AVL树
- 算法题:一个链表:奇数序号升序,偶数序号降序,要求做这个链表的整体升序排序(这不是头条爱出的题?)贴一下我写的(仅做参考) https://pasteme.cn/34202
- 反问:面试官介绍了业务和复杂度
美团三面:15分钟(leader电面)
- 介绍了两个项目
- 看过阿里电商的项目结构吗?(没有,随便说了说我的项目怎么做的)
- 怎么解决超卖(答:redis + mysql乐观锁)
- 职业规划 + 想成为tech lead应该应该具备什么条件
- 现在有哪些offer
求职的路告一段落了,楼主本科北京211通信专业,研究生美国渣硕。由于去年在国外,没参加秋招,感谢🐂客大佬们的面经和帮助才得以被从失业的边缘拉了回来。祝牛客的兄弟姐妹们早日上岸和找到理想的实习!