2年JAVA今日头条3轮面试经历

面头条的时候已经是十月底了。大半个月没有面试,之前准备的知识点比如http状态码之类的记忆性的东西,早就忘光了。

二面的时候问了一堆状态码,全都不记得了。面试官态度很好,跟我说,你现在不记得了,说明你这些知识只是为了面试临时抱佛脚,并没有深入理解,所以时间一长就忘了。确实是这样。

总的来说,头条的面试比较注重算法能力,两面都手写了算法,算法不算特别难,但是真正实现好,还是会有很多细节要考虑到,而且要写的代码都比较长。头条也比较喜欢出场景题,感觉面试官也没有标准答案,主要看你的回答和思路。

临时抱佛脚背的知识会忘掉,但刷题后的代码能力解题能力却是内功,可以说一劳永逸的,所以多刷题很重要,面试的时候代码写的好或许可以弥补有些问题没答上来。

一面

1、自我介绍

2、数据库优化有什么思路?你了解的只有分库分表和索引?

3、索引的原理?如何减少回表操作?

4、联合索引,如果联合索引(a,b),现在查询a>0,b>0可以用到这个联合索引么?(太久没看,生疏了,答错了,答案应该是不能,只能用到a的索引,范围索引只能用到一列)

5、数据库执行计划你会关注哪些字段?

6、Java虚拟机了解么?使用中有什么注意事项?说下jit?codecache了解吗?

7、手写一个单例模式和观察者模式

8、写一个算法吧,一个二维数组,每一行从左到右递增,每一列从上到下递增,给一个数,判断他是否在在二维数组中,在返回下标,不在返回(-1,-1),要做到最优

9、了解nio么?讲一下nio的理解。

10、Linux命令了解么?查看网络状态的命令,查看内存占用的命令。Awk命令。

11、CLOSE_WAIT状态过多有哪些情况造成?怎么排查?

二面

1、自我介绍

2、http协议的chunk知道么?是干什么的?

3、http的状态码了解么?说一下

4、301和302的区别?502和503的区别?(这么久没面,早忘了,然后被面试官教育了一番,说没有真正掌握这些知识)

5、Redis的数据结构的底层实现?说下zipList结构及其优缺点?

6、Mysql集群数据是怎么同步的

7、手撕算法:一个链表,奇数位置递增,偶数位置递减,给链表排序。要求O(n)的时间复杂度

8、Select,poll,epoll的区别,说下epoll原理?epoll为什么要用红黑树?epoll 为什么要有 EPOLLET 触发模式?

9、场景题,设计一个高并发的系统。

三面

1、自我介绍

2、服务器处理接受一个请求的过程?

3、数据库的索引的原理?Innodb都是聚簇索引么?

4、设计一个文件分发系统,分发到10000台服务器,做到高效可靠,如何保证高效?如何保证可靠?

5、有什么offer?你的优点缺点?你觉得你在同龄中处于什么水平?

"面经哥"已累计3000+条真实面试经验,期待你的加入~

相关推荐
Java成神之路-几秒前
深入 JVM:G1 垃圾回收器原理与实现细节
java·jvm
似水明俊德19 分钟前
04-C#.Net-委托和事件-面试题
java·开发语言·面试·c#·.net
好家伙VCC43 分钟前
# 发散创新:用 Rust构建高性能游戏日系统,从零实现事件驱动架构 在现代游戏开发中,**性能与可扩展性**是核心命题。传统基于
java·python·游戏·架构·rust
爱笑的源码基地1 小时前
门诊his系统源码,中西医结合的数字化门诊解决方案
java·spring boot·源码·二次开发·门诊系统·云诊所系统·诊所软件源码
庞轩px1 小时前
缓存Key设计的“七要七不要”
java·jvm·redis·缓存
小璐资源网1 小时前
Java 21 新特性实战:虚拟线程详解
java·开发语言·python
杰克尼1 小时前
七天速刷面试--day03
面试·职场和发展
SimonKing1 小时前
全网爆火的OpenClaw保姆级教程Linux版,它来了。
java·后端·程序员
于慨1 小时前
tauri
java·服务器·前端