百度Java后台开发一面凉经 9.19


1. 用过Spring吧,说一说Spring中Bean的加载过程,BeanFactory和FactoryBean有什么区别?(上来第一个问题就懵逼了)

2. 场景题:有A、B、C三个方法,分别是循环输出A,输出B,输出C 10次,使用多线程实现按照“ABC”的顺序输出10次

3. Synchronized的底层原理,字节码层面如何实现加锁的?

4. ReentrantLock如何实现非公平锁的?重点是如何实现“非公平”,和“公平锁”有什么区别?

5. 知道hashmap不安全吧,concurrentHashmap是安全的吧,那你知道concurrentHashmap的size()怎么求吗,在并发场景下,需要怎么设定锁?

6. 编程题:给定一颗二叉树,实现一个方法让每个节点新增一个next,next指向当前节点右边的第一个兄弟节点。

我用的层次遍历,面试官说试试用dfs来写,dfs应该比层次遍历简单

7. 编程题:一个二维矩阵,矩阵中标0的位置是道路,标1的位置是墙壁,矩阵的边界也是墙壁,然后有一个起始点p和终点q,问:一个小球起始位于p,小球停止时可以选择一个方向一直滚动,碰到墙壁就停下来,问:小球能否从p滚到q,即最终要在q静止,滚过去不行。

8. MySQL用的什么索引?

9. B+树为什么索引快?

10. 幻读知道吗?Innodb如何避免幻读的?

11. 上一问我回答的间隙锁,然后面试官又问:间隙锁的锁定范围是多少?Select * from t where id<4,这条sql中,间隙锁锁的范围是什么?是(1,4)还是(-无穷,4)?

太菜了,基本没一个问题是完全答出来的,果然是大厂,多数都是问底层源码和汇编层次的原理,好好加油吧!

#百度##面经##校招##Java工程师#
全部评论
和我面的是同一个面试官啊,问题都一样
点赞 回复 分享
发布于 2019-09-19 22:53
大部分回答不上来
点赞 回复 分享
发布于 2019-10-10 21:20
老哥你是校招吗?我感觉你遇到了变态。
点赞 回复 分享
发布于 2019-12-12 22:47
感觉还能接受阿. 常见面试题
点赞 回复 分享
发布于 2019-12-13 15:15
Select * from t where id<4,这条sql中,间隙锁锁的范围是什么?是(1,4)还是(-无穷,4)? 这道题的答案是什么呢  快照读不是不加锁吗
点赞 回复 分享
发布于 2019-12-30 15:56
你这题 有答案没
点赞 回复 分享
发布于 2022-10-11 23:32 河南

相关推荐

Noob1024:一笔传三代,人走笔还在
点赞 评论 收藏
分享
评论
6
78
分享
牛客网
牛客企业服务