在我小时候,我极力装得像个大人,当我已经不再是小孩的时候,我又希望像个孩子。——列夫·托尔斯泰
目前已经拿到宜信的offer,来牛客上还愿。本人比较菜,互联网公司的offer一个都没拿到,目前都是金融科技公司的offer。
宜信的面试官总体来说都比较nice,人都很有耐心
一面(1 hour):
1、项目介绍(十分钟)
2、项目里redis了解多少?
3、持久化方式是什么?(aop,rdb)
4、aof重写是什么?
5、怎样保持mysql与redis的数据一致性?(最终一致性)
6、写代码,回文数判断。(回文数以链表的形式存储,怎样盼判断他是回文数。)
7、ArrayList和LinkedList的区别?
8、二叉树有哪几种方式遍历?
9、然后,面试官给了一个二叉树,让你输出前序和中序的结果。
10、给定一棵二叉树,和一个数值。求二叉树的路径和等于给定值的所有路径?(二叉树中可能有负数,终止节点为中间节点不算)
11、Java 泛型(new List<new LinkedList<Integer>> 编译器会不会报错之类的)
12、final的基本用法以及会产生的后果
一面基本上都很基础,面试官人很好,会细心指导你,并且帮助你完成编程。
二面:
二面就两道算法题
1、求一个数组中右边第一个比他大的数(单调栈)(不能暴力搜索)
2、有一个先升后降的序列,求最大值(二分搜索)
这个面试官人技术很厉害,面试的时候很耐心。第一题在我没思路的时候,也耐心给我讲解。
三面:
1、项目介绍
2、jvm了解吗?内存管理机制是什么?
3、垃圾回收机制
4、g1和cms的区别
5、数据结构了解多少(说了java collections 类里面的东西)
6、hashmap在java里面怎么实现的?(说了1.7和1.8的区别,脑残说了下红黑树)
7、红黑树怎么实现的?有什么特点?什么时候左旋?什么时候右旋?
8、mysql四大事务特性,每个特性都是什么意思
9、mysql优化策略
10、mysql怎么做到联合索引的(b 树)
11、联合索引的特性
12、分布式锁
三面主要以你看的东西为主,主要考察你知识的全面性,这个面试官很和蔼,感觉聊了很多。