Java面试复盘 | 字节番茄小说三面全部通过
Posted Java程序员-张凯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java面试复盘 | 字节番茄小说三面全部通过相关的知识,希望对你有一定的参考价值。
面试流程:
9.12笔试 → 9.14约面 → 9.24一面 → 9.29二面 → 10.9三面 → 10.12内推进展从“面试状态核定”变成了“面试已完成”
10.13内推人问了hr,说状态是“offer审批中”
发个面经攒人品,许愿工作顺利!!!
一面 2021/9/24 约60分钟
1. 自我介绍
2. 项目相关
(团队人数 | 项目应用到的框架等 | 表设计)
3. Java中常用的集合类
4. 有一组数据,需要按照顺序对它进行加密,如果用集合做的话你会选哪个集合?比如一个数组,其元素本身无序,每个元素是字母或者数字都行,对它从小到大进行排序,你会选哪个集合去存储?
5. Java中线程同步的方案有哪些?
6. Lock接口的实现类
7. mysql查询比较慢的话,通过什么方式来优化?
8. http协议
9. 算法题:lc726 原子的数量
10. 反问部门和技术栈
一面感受:
其实是面试体验不太好的,不是面试官的面试过程有问题,是他没关消息提示,整个面试过程听了可能上百声“叮咚”的消息提示音,一开始没适应的时候会打断思路。最后的算法做的不咋地,给了大概20min,说了思路没全写完,面试官说思路应该可以,他还有下一场面试。这回算法拉胯了,以为凉了结果过了。
二面 2021/9/29 约80分钟
1. 自我介绍
2. 项目相关
3. Java中有个String类,如果我们自己写一个java.lang.String类,会出现问题吗?
4. Java里的Map有哪几种实现?
5. TreeMap的使用场景,底层数据结构,
红黑树的存取复杂度
6. LinkedHashMap的使用场景?
7. Java中有个volatile关键字用过吗,用volatile修饰的变量来记录访问次数,需要其他同步操作吗?
8. Java有哪些同步方案,如果不加锁呢,加锁会不会太重了?
9. CAS的ABA问题是什么,要怎么解决?
10. 有没有用过工具,怎么查看Java堆的统计信息?
11. 我们来问问网络吧,DNS是哪层的协议?
12. tcp有个状态是Time_Wait,这个具体是在哪儿,作用是什么?
13. get和post的区别,用get和post传输的时候有个编码,那个编码的作用是什么?
14. 有没有面过别的公司 | 哪儿的人
15. 给了个C++的结构体,有char、int等3个属性,问占多少内存,换了个顺序,又问占多少内存
16. 算法题:
①. [算法1]:求最大长度的自然序子数组,输出长度和子数组下标(从1开始),不要求连续,自然序是指“123456...”,即3的后面必须是4,以此类推
如,3344567,输出应为4,[2,3,4,5],即数组的第2/3/5/6个元素“3456”
②. [算法2]:二叉树的层序遍历(面试官:再写个常规的吧)
17. 做完题开始问数据库相关的,聚集索引和非聚集索引
18. 事务隔离级别
19. 怎么实现的可重复读?
20. 反问
问的内容比较多,
算法题让写了两个,用面试官的话来说一个不大常规,一个常规题目,也可能是因为一面的算法拉胯了所以二面问了俩?算法题一边讲思路一边做的,都还算顺利。
二面感受
面试官很和善,很多问题之间都是有联系的,回答的时候没按八股文来,基本都是说自己的理解+书籍上的内容。面试结果很快就出了(大概当天或者第二天),效率很高,约了节后三面。
三面 2021/10/9 约70分钟
1. 自我介绍
2. 来个算法吧(真的吗?上来就是算法吗?头一回遇到没有接着自我介绍问项目的面试官)
输入为两行:
- 第一行:[[3,18], [5, 12], [18, 6]...] 表示3到18有边,5到12有边...边是双向的(就是想说无向图),具有传递性(就是表示[3, 18, 6]在一个连通分量里)
- 第二行:[[3, 6], [3, 12]...] 就是问两点是否在同一个连通分量里
输出:[true, false, ...]
3. 再来个算法题吧(真的吗?二面可是考了我俩算法啊!!!三面也要俩算法吗???)
有个词典["c", "ch", "chi", "hi"...],给你一个list,里面的元素是字符串,判断能否通过合理的切分使得字符串能切分成词典中的元素,每个元素可以使用的次数无限,返回是否能切分成功,能则为true,不能为false。
比如:["cchic","chihhi"... ] 输出 [true, false]
(看完题目,大概说了一下思路,然后尝试让面试官换题。
面试官:为什么要换题呀,你做做试试,我要是换题肯定更难!!!
我:好的(苦笑)
4. 你再看看下一个题吧,一个系统设计题(面试官你真的没有一丁点的八股想问我吗?)
设计一个简单的评论系统,要求写出创建表和查询的sql
①评论包括一级评论和二级评论(即在一级评论下还可以评论)
②一级评论有热度值,热度值为该一级评论下二级评论的条数,二级评论无该属性
③查询方式有两种,一个是按时间排序
,一个是按热度值排序,要求分页查询
5. 本科成绩很好,为什么考研选择了考本校,没选更好的学校,我不是说你的学校不好的意思
6. 你觉得自己的优势是什么,说说优缺点
7. 那问个你简历上写了的吧,你说说redis的集群
8. 时间差不多了,那我们今天就面到这里(没让反问,一度以为人没了,没想到又过了)
三面感受
这是我面过的最不常规的一场,没问多少八股,面完给我整累麻了,结束了一看录音忘了开,面试时间推迟了一小时,面试官连着国庆请假了,当天刚回北京,在家里面试的。
面试题参考答案:
以上面试题的参考答案我都整理好打包上传到百度云了,有需要的朋友自行下载即可哈。
百度云链接: https://pan.baidu.com/s/18Mc88jm320P8_1C0qBQU3g
提取码: b6bw
百度云链接不稳定,随时可能失效~
如果百度云链接失效了的话,请关注博主的微信公众号:Java团长,发送“ 番茄 ”也可获取哈~
以上是关于Java面试复盘 | 字节番茄小说三面全部通过的主要内容,如果未能解决你的问题,请参考以下文章