-----------------------------------------------------2021/08/22更新---------------------------------------------------------
插播一则广告~:国内二手行业巨头——转转集团2022届校招开始啦~~~ 一线大厂待遇,公司氛围环境很不错,找工作的同学千万不要错过~,人类高质量内推连接:https://www.nowcoder.com/discuss/709117?type=all&order=time&pos=&page=3&ncTraceId=&channel=-1&source_id=search_all_nctrack
----------------------------------------------------------分界线----------------------------------------------------------------
校招结束,投递了50多家公司,最终拿个几个中小厂offer,如虾皮shopee、小米、招银网络科技、微众银行、58集团转转、同花顺等。
精力有限,只记录下了一部分面经,分享给大家~
微众银行
一面:
- 自我介绍
- 问实习经历
- 对所选择的公司有什么要求
- 未来几年规划
- 大学学过哪些课程
- 讲一下线程
- PCB里面都有什么
- Java为什么要进行垃圾回收(扯了十多分钟,然后开始被灵魂拷问)
- 哪些可以作为GCRoots
- 虚拟机栈中引用的对象又是如何被挑选出来的
- 初始标记要stw(stop-the-world)吗
- 为什么要stw
- 如果不stw并发标记不也可以处理这段时间产生的垃圾吗
- SpringMVC是怎么处理请求的
- 为什么用DispatchServlet
二面:
- 自我介绍
- 问实习经历
- 职业规划
- 大学这几年为了找工作都学了些什么
- 博客上都写了什么
- Over,16min结束战斗......
- 反问:部门、什么时候给面试反馈
三面:
- 自我介绍
- 实习经历
- 目前都有哪些面试走完流程了
- 在社团拉赞助印象最深的是哪一次
- 在忙的时候是如何调配时间的
- 为什么不留在现在的城市
- 通过什么渠道了解到微众银行并投递的
- 有学长或学姐在微众银行工作吗
- 反问:
- 我被分配在哪个部门了(电话刚挂我就给忘了。。。)
- 什么时候给反馈(一周之内,之后还要HR再次沟通意向,如果还选择去微众的话,就会沟通薪资,过程大概两周)
- 有已经走完流程拿到offer的吗(有,但基本上你已经是流程走的最快的一批了)
快手
一面:
- 操作系统线程通信、进程通信
- 进程生命周期
- TCP三次握手四次挥手
- TCP如何保证可靠传输
- TCP粘包
- Jvm内存模型
- 垃圾回收算法
- G1收集器
- 算法题,1-9里,k个数相加等与n,有哪些组合?(回溯+剪枝)
猿辅导
一面:
- 项目,场景问题(并发)
- TCP第三次握手ack丢失会怎么样
- 操作系统虚拟内存
- Spring AOP
- 循环依赖如何解决
- 事务隔离级别RepeatableRead如何实现
- 有一些数据库选择B树来实现索引而不是B+树,为什么?
- 场景题:数据库不支撑范围查找,选择B+树实现索引还是hash实现索引?
- 乐观锁悲观锁
- 公平锁非公平锁
- 合并有序区间[1,3] [2,4] [5,7] [6,8] [11,13]
二面:
- 数据库多节点如何访问
- Springcloud都有哪些组件
- 微服务架构的组成
- 负载均衡
- Springboot优点
- Starter
- 线程池
- NIO,BIO
- Volatile
- 算法题:链表排序(要求空间复杂度<0(n), 节点值不可变)
小米
一面:
- Object类里的hashcode和equals方法,(追加:如果hashcode不同,而equals相同会怎样?)
- Object里的wait和notify方法,(追加:能直接new 一个object然后调用它的wait方法吗?)
- 什么是线程安全问题?
- 如何实现线程安全?
- ThreadLocal讲一下
- JavaNIO讲一下
- JUC copyonwrite机制讲一下,有什么缺点?
- 为什么说http是无连接的?http1.1添加keepalive还算无连接吗?
- Session和cookie?
- Cookie被禁了怎么办?
- Header里面都有什么?
- Spring里applicationContext和beanfactory区别
- 如何加载bean?讲了一下IOC的实现
- 数据结构,图的DFS和BFS
- 数据库聚簇索引
- 了解Docker吗?
- 你大学期间做过最自豪的一件事情是什么?
二面:
- 自我介绍+项目
- 手写一个二分(???天可怜见,第一次被问到这么简单的代码题,感动哭了,感谢面试官!)
- Java内存模型
- 聚簇索引、非聚簇索引
- 索引的实现B+树
- Collection集合类讲一遍
- Hashmap和hashtable区别
- MySQL的explain
- Docker讲一下
烽火通信
一面:
- springboot和spring的区别
- Spring依赖注入实现方法(不是原理,代码层面如何引用的,如添加@AutoWired)
- 设计模式用过哪些,挑一种熟悉的说说
- 用过collection下哪些类
- ArrayList和Linkedlist
- Hashmap和hashtable
- Object里有哪些方法
- Wait和notify方法说一下
- Abstract和interface区别
- Jvm内存模型
- 如何判断对象已经死亡
- Mysql查找前一百条数据,和批量查询语句的写法
转转
一面:
- hashmap实现
- 为什么用红黑树不用avl树
- MySQL索引实现
- 为什么用B+不用普通二叉树
- MySQL事务隔离级别
- 幻读出现在哪些级别里
- 如何解决幻读
- Spring循环依赖如何解决
- 可以重写String吗
- 自己写一个Object.lang.String会怎么样
- 双亲委派机制
- Linux查看服务器状态指令
二面:
- 你在这个项目中做了多少工作
- 写这个爬虫项目的时候遇到反爬虫了吗?数据量是多少?
- 项目中遇到的难点
- MySQL最佳左前缀法则
- 并发包中有哪些类
- ConcurrentHashMap实现
- 除了加synchronized分段锁,ConcurrentHashMap还用什么来保证并发
- Cas操作会出现哪些问题
- Jvm如何判断一个对象是否存活
- 那些对象可以作为GCRoots
- 循环引用,引用计数器法如何判断
- TCP为什么三次握手
- 算法题:二叉树左视图