小米Java开发一二面凉经

总体感受

小米的面试官是真的很友好啊,都很有活力的感觉,平易近人,而且对一时间答不上来的问题有不错的引导。也没有说一些让人不舒服的话,总之是非常愉快的体验。
我是小米提前批的,在8.21收到消息,8.28一面;8.31通知二面,9.4二面;目前在等消息。
后续更新,已经拿到offer了~

一面

总时长:70分钟
上来先自我介绍不用说了,因为我提到了我读了jdk源码和了解了jvm相关,所以一面问的这些比较多。总共问了大概有以下这些问题

讲讲HashMap的底层实现
红黑树是什么,为什么HashMap要用红黑树
JDK1.8当中HashMap的put是怎么实现的,链表和红黑树的具体插入是怎么做的
JDK1.8中HashMap对链表的插入是头插法还是尾插法?JDK1.7呢?为什么要改?
HashMap有线程安全版本吗
ConcurrentHashMap在JDK1.7和JDK1.8分别是怎么实现的
HashTable是什么,底层实现呢
ArrayList和LinkedList有什么区别
为什么jdk1.7的ConcurrentHashMap用ReentrantLock而1.8用synchronized
synchronized和ReentrantLock有什么区别
AQS是什么,有什么用
如何开启一条新线程
线程池是什么,有什么核心参数
如果线程池是空的,放入一个新的工作,线程池会怎样处理,线程池是满的呢?
如果线程池是空的,放了一个工作之后该工作结束了,再放一个新的工作会怎么样
什么是CAS,CAS有什么缺点,如何处理
了解tomcat吗?tomcat是什么,说说你的理解
servlet是什么,和tomcat有什么关系
SpringMVC中的MVC代表什么
jvm中内存分了几块
垃圾收集算法有哪些
CMS垃圾收集器讲一下
G1垃圾收集器讲一下
CMS和G1都有多次标记阶段,为什么要这样
虚拟机栈里有什么,干什么用的
虚拟机栈会抛出错误吗,什么时候会抛出什么错误
讲讲HTTP协议
当我在地址栏输入www.baidu.com并按回车的时候会发生什么
TCP三次握手
如何优化一条SQL语句
为什么SQL语句中的'非'操作性能低
写一下非递归的前序遍历
为什么用ArrayDeque而不用Java提供的Stack
反问环节

问了相当多的问题啊~大部分都答上来了,只有HashMap中链表插入和SQL相关的答得不太好。最后写非递归前序遍历的时候太紧张写成了层次遍历~面试官还很贴心地引导我去改代码,从队列换成栈之后成功通过。
一面之后没几天就打电话通知我二面了(吐槽一下小米的面试官好辛苦,第一次晚上九点给我打电话,第二次晚上九点半打电话。。。)

二面

二面的时候感觉就不太好了。面试官听说我自己写了点小型项目之后,居然在线进我GitHub上看。。。
之后就开始问问题了:

在些项目的时候出现过什么困难,最后怎么解决的?
你用了MyBatis,那我们知道MyBatis是一个空接口+XML文件实现功能的,那么具体是怎么实现的?

只问了两个问题。。第二个没答上来,面试官让我写代码
写一个快速排序试试,先讲讲什么是快速排序,然后再写
有没有更好的快排形式?(我写了三数取中)

然后。。没有然后了,写出来之后出现了一个小bug,是因为--写成++导致的。面试官在我改完这个问题之后就结束了技术问答,开始问我考不考研balabala的,最后还问了我是哪里人
之后就是反问环节了

目前等通知中。。非常紧张,感觉二面凉了
#面经##校招##小米##Java工程师#
全部评论
后续来了,冲!!!
1 回复 分享
发布于 2020-09-11 12:36
我也写的快排,最后有问题没有debug出来,感觉我凉了
点赞 回复 分享
发布于 2020-09-08 10:01
楼主,cms和G1为什么有多次标记阶段你咋回答的
点赞 回复 分享
发布于 2020-09-11 18:46
楼主 小米有hr面吗
点赞 回复 分享
发布于 2020-09-19 10:23
楼主oc了吗
点赞 回复 分享
发布于 2020-09-20 11:04

相关推荐

10-29 13:41
已编辑
武汉大学 Web前端
希望被捞的劳伦斯很超脱:再想想觉得问的挺简单的,感觉不是kpi面,是真想要,系统学一下以后应该就能答出来。
查看9道真题和解析
点赞 评论 收藏
分享
9 51 评论
分享
牛客网
牛客企业服务