3.17美团优选一面
第一次面美团,感觉体验不是很好,首先面试官就迟到了五分钟,而且全程戴耳机,问问题停顿也很久,感觉像是匆匆忙忙开始又匆匆忙忙结束,纯纯KPI了。直接贴面经吧,避雷。
- 自我介绍
- 项目介绍,用了分布式锁
- 分布式锁加锁原理,这里感觉没有说好,被面试官逮着问
- 缓存的一致性问题?
- Java为什么用字节码?答了可以跨平台,面试官也没啥反馈
- 自己说了平常也用C++,被面试官问Java和C++的区别,说了指针、引用还有编译的问题
- 指针和引用的区别?
- 面向对象的特性
- 为什么要用封装?封装的好处有啥?
- 继承的好处呢?
- 继承和接口的区别?接口的方法必须都要实现吗?
- CMS回收算法?分为哪几个阶段?这里感觉最后的一个阶段有点卡壳了
- 标记清除的算法缺点?怎么克服这些缺点,答了有标记整理
- Java内存分区,新生代内存回收算法?
- JVM内存结构
- 加锁的关键字?Synchronized
- Redis的数据结构?持久化方式?各有什么优缺点
- 你也用过数据库吗?
- MySQL事务的隔离界别?不同隔离级别解决什么问题?
- MySQL底层索引结构?为什么要用B+树?索引的查找过程?
- 开始做题,用的是牛客。
- get和set都为O(1)级别的LFU算法,想了半天只想到了set是O(1),get是O(n)的,面试官提示可以用堆,回答说建堆以及调堆的时间也不是O(1),面试官思考了很久,直接说换一题吧
- 回文链表。说了思路先用快慢指针找到中间节点,然后左右比较。面试官思考了一会说思路是可行的,让写出来,但是牛客抽风总是跑不出来,报一个字符串越界的错,但是我也没用字符串,面试官看了一会,说思路没有问题就给结束了,最后也没有反问,八点准时结束。
总的来说感觉项目那有点紧张,卡壳了点,别的都说出来了,但是这次面试体验不是很好,期待能有结果吧