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+条真实面试经验,期待你的加入~

81b9874248cbf1bd7799374aa5574b53.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/23451.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Vue】组件通信

文章目录 一、组件之间如何通信二、组件关系分类三、通信解决方案四、父子通信流程五、父向子通信代码示例六、子向父通信代码示例 组件通信,就是指组件与组件之间的数据传递 组件的数据是独立的,无法直接访问其他组件的数据。想使用其他组件的数据&…

利用人工智能-智慧合同管理系统规避企业合同管理风险

随着企业业务的不断扩展,合同管理在企业运营中扮演着越来越重要的角色。然而,传统的合同管理方法往往存在效率低下、风险控制不足等问题。为了解决这些问题,道本科技智慧合同管理系统不仅通过合同全生命周期的管理对企业合同管理从宏观上做了…

开发uniapp 小程序时遇到的问题

1、【微信开发者工具报错】routeDone with a webviewId XXX that is not the current page 解决方案: 在app.json 中添加 “lazyCodeLoading”: “requiredComponents” uniapp的话加到manifest.json下的mp-weixin 外部链接文章:解决方案文章1 解决方案文章2 &qu…

SEACells:元细胞分析

元细胞是从单细胞测序数据中衍生的细胞分组,代表高度精细的不同细胞状态。在这里,作者介绍了单细胞细胞状态聚集 (SEACells),这是一种用于识别元细胞的算法,它克服了单细胞数据的稀疏性,同时保留了传统细胞聚类所掩盖的…

【C++进阶】深入STL之vector:深入研究迭代器失效及拷贝问题

📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C “ 登神长阶 ” 🤡往期回顾🤡:初步了解vector 🌹🌹期待您的关注 🌹🌹 ❀STL之vector 📒1. 迭…

Linux C语言:数组的定义和初始化

一、数组 1、定义 在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来,具有一定顺序关系的若干个变量的集合就是数组 。 2、特点 组成数组的各个变量称为数组的元素数组中各元素的数据类型要求相同元素在内存中是连…

pdf的压缩该怎么做?快速在线压缩pdf的方法

pdf文件是现在很常用的一种文件格式,有很多的文件内容都可以通过这种格式来展示内容,比如一些通知文件、设计图、个人信息等等,文件的内容越多就会越大,在使用的时候经常会受到一定的限制。那么有什么方法能够快速的将pdf文件变小…

目标检测-AnyLabeling标注格式转换成YOLO格式

Anylabel可以极大的增加数据的标注效率,但是其标注格式如何能转换成YOLO标注格式,具体内容如下所示。 关于AnyLabeling的其它详细介绍如下链接所示 https://blog.csdn.net/u011775793/article/details/134918861 Github链接 https://github.com/vietanhd…

巧用docker+jmeter快速实现分布式百万级并发

分享背景 碰到的问题: 一个JMeter实例可能无法产生足够的负载来对你的应用程序进行压力测试~ 解决办法: 1、修改jmeter配置文件里的内存堆 2、引入jmeter分布式压测 带来的问题: 如果我们要做分布式负载测试–我们需要1个…

企业数据挖掘建模平台极简建模流程

泰迪智能科技企业数据挖掘建模平台是企业自主研发,面向企业级用户的快速数据处理构建模型工具。平台底层算法基于R语言、Python、Spark等引擎,使用JAVA语言开发,采用 B/S 结构,用户无需下载客户端,可直接通过浏览器进…

GAT1399协议分析(7)--pycharm anaconde3 配置pyside2

一、安装pyside2 pip install pyside2 二、配置qtdesigner File->Settings->Tools->External tools 点击添加,添加QtDesigner, 注意designer.exe路径,需要在虚拟环境下。 三、添加pySide2 File->Settings->Tools->External tools 点击添加,添加PyS…

高效内容分发:海外短剧推广平台的流媒体传输技术挑战与解决

随着海外短剧市场的蓬勃发展,如何高效地将短剧内容分发给全球观众成为了推广平台必须面对的一大挑战。在这一过程中,流媒体传输技术起着至关重要的作用。然而,由于网络环境的复杂性和多样性,流媒体传输面临着带宽限制、延迟等诸多…

前端--导出

这边记录我们公司后端做的导出接口和前端是如何对接的 这边的技术栈是: 1: react 2: fetch 第一步:简单封装--导出界面 import { DrawerForm } from ant-design/pro-components; import { CloseOutlined } f…

iOS 之homebrew ruby cocoapods 安装

cocoapods安装需要ruby,更新ruby需要rvm,下载rvm需要gpg,下载gpg需要homebrew,所以安装顺序是homebrew->gpg->rvm->ruby-cocoapods Rvm 官网: RVM: Ruby Version Manager - RVM Ruby Version Manager - Docum…

Linux 35.5 + JetPack v5.1.3@ ego-planner编译安装

Linux 35.5 JetPack v5.1.3 ego-planner编译安装 1. 源由2. 编译&安装Step 1:依赖库安装Step 2:建立工程Step 3:编译工程Step 4:安装工程 3. 问题汇总3.1 planner/plan_env - OpenCV3.2 uav_simulator/local_sensing - CUDA优…

《Navi日语社》App:日语学习与翻译的智能助手,支持日文OCR识别提取文字,无需打字对着说话就能翻译的日语语音翻译工具!

在全球化的今天,掌握一门外语已经成为许多人的必备技能。尤其是日语,不仅在学术、商务领域有着广泛的应用,也是许多旅行者和动漫爱好者的心头好。《Navi日语社》App,作为一款专为日语学习者和翻译需求者设计的移动应用&#xff0c…

Zookeeper复习

一、入门 1、概念 zookeeper文件系统通知机制 2.特点 1)、一个领导者,多个跟随者组成的集群。 2)、集群中只要有半数以上存活机制,zookeeper集群能正产服务。zk适合安装奇数台。 3)、全局数据一致:每…

华为鸿蒙开发-鸿蒙基于ARKTS开发之启动模式

前言 鸿蒙生态取得爆发式增长! 截至3月底,已有超4000个应用加入鸿蒙生态。 而在今年1月中旬,华为刚宣布HarmonyOS NEXT鸿蒙星河版面向开发者开放申请,这一版本鸿蒙系统也被称为“纯血鸿蒙”。 当时,华为宣布首批200…

2. QGis二次开发项目实践一之技术实现

前言 本文描述了QGis二次开发项目实践一的涉及到的技术点涉及到的QGis技术点如下 矢量图层加载显示矢量图层导出dxf矢量图层合并 代码描述 矢量图层加载显示 矢量图层加载显示在以前的教程中已有详细说明,请参考以下链接 5.1 加载矢量图层(ogr,gpx)5.2 加载矢量…

【微服务】使用kubekey部署k8s多节点及kubesphere

kubesphere官方部署文档 https://github.com/kubesphere/kubesphere/blob/master/README_zh.md kubuctl命令文档 https://kubernetes.io/zh-cn/docs/reference/kubectl/ k8s资源类型 https://kubernetes.io/zh-cn/docs/reference/kubectl/#%E8%B5%84%E6%BA%90%E7%B1%BB%E5%9E…