首页 > 小米社招Java岗一二面
头像
sasanqua
发布于 2020-12-26 13:04
+ 关注

小米社招Java岗一二面

一面

1、常用Java集合类。

1Java 中的集合主要分为四类:

    •List 列表,有序,可重复;

    •Queue 队列,有序,可重复;

    •Set 集合,不可重复;

    •Map 映射,无序,键唯一,值不唯一每种集合类型下都包含多个具体的实现类;


2、HashMap为什么长度是2n次幂,数据结构,扩容(包括元素移动的细节),线程不安全的问题。

3、ConcurrentHashMap是如何保证线程安全的?

4、1.71.8有什么变化?为什么要做这样的优化?

5、CopyOnWriteList怎么保证线程安全,为什么这么做?

6、Java synchronized关键字的作用,原理,锁升级、锁粗化、锁消除。

7、volatile关键字的作用,原理。

8、MVCC

9、事务的ACID,每一项是如何保证的?

10、MySQL的索引结构,为什么是B+树而不是B树?

11、手撕代码:二分查找;这道牛客题霸上有原题,大家可以去看看:NC105二分查找

12、手撕代码:反转链表;这道牛客题霸上也有原题,大家可以去看看:NC78反转链表


二面

1、求递增数组中相加等于10的元素对。

2、17^400 - 19100计算结果能不能被10整除。

3、先升序后降序的数组排序。

4、一个url对应一个random值,要求设计一个系统,根据url查询random值,具体到表怎么设计,索引怎么加,代码怎么写?

5、讲项目,画架构图,为什么这么设计,哪一块是你做的,为什么这么做,做了多久。


三面

1、自我介绍。

2、单例模式的几种写法,并解释一下为什么。

3、tcp握手挥手过程,以及socket的状态变化。

4、线程的状态,以及变化的时机。

5、Java内存模型,堆的组成,gc过程。

6、synchronized修饰同一个类的两个静态方法同步吗,为什么?

7、线程池设置了coreSizemaxSize之后,如果线程数量已经达到了coreSize8、这个时候进来一个任务,会怎么处理?

9、SQL查询优化怎么做?

10、镜像二叉树(递归和非递归)

11、删除二叉搜索树的某一个节点。

12、给定数组,求第k大的数字

13、你的优点是什么,缺点是什么?

14、最快什么时间入职,薪资要求。

15、你有什么要问我的吗?

更多模拟面试

全部评论

(7) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期热帖

近期精华帖

热门推荐