宜信大数据中心java研发岗面经
  目前已经拿到宜信的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、分布式锁 
   三面主要以你看的东西为主,主要考察你知识的全面性,这个面试官很和蔼,感觉聊了很多。 
 