阿里一面:
不想说什么,一面挂
- 问我做了哪些项目,然后问了项目里的各种坑,一直问到死为止。
- 快排实现原理
- 问数据库索引,b树和红黑树的区别和应用场景。
- 分布式应用要注意哪些因素。怎样避免分布式环境下重复执行请求。
- 然后是数据库事务,问我有没有用过事务,如果一个事务中有增删改查四个操作,应该怎样排这4个操作的先后顺序。
头条一面:
也是一面挂,三道算法题
- 给一个二维数组表示一个矩阵,要求螺旋输出这个矩阵
- 图案解锁。手机屏幕的图案解锁,要求至少要连接4个点,不能跨点连接(就是如果2没有被连,那么就不能从1直接连到3),输出有多少种情况
- 字符串切分。给一个字符串和一个字符串的集合,问该字符串能否被这个字符串的集合切分。例:字符串集合为{“abc”, “de”, “f”},字符串”deabc”就可以被切割,但是字符串”abcfe”就不可以。
58:
一面,20分钟就面完了
- 简单介绍了下项目
- tcp握手为什么是三次,而不是两次
- kafka的选主策略,以及内部的消息存储机制
- java中抽象类和接口的区别
- maven原理
- 进程和线程的区别
- 算法题:怎样判断一个数是否是2的n次方
二面,hr给我约晚上11点二面,也是醉了
- mysql执行每一条sql的原理和机制
- 后面主要是聊项目,聊到为什么要在项目中使用kafka,然后聊了下学习过程,以及kafka原理,项目中的难点等等
hypereal:
一面:
- 一面就是给你个共享文档让你一个小时内做题,全程不管你,你甚至可以切出去百度
- java基础,基本数据结构,然后是算法题
- 链表倒置
- 矩阵置0。leetcode原题
- 矩阵匹配。我用的暴力。
二面:
- 二面主要是针对你一面做的题,提出一些问题,然后稍微扩展下
- 最后问了一个设计题。设计一个聊天室,一步步深入,从最开始的监听一个socket,到同时多个socket,到多个聊天室,到多台机器做分布式,到最后的超高并发。