BAT2021年最新一二三 面试问题,挑战一下你能走到哪一步

2023-05-16

背景

今年实在太难了,从去年3月份开始我就选择离职然后单干,刚开始和几个同事一起投资开公司,想着做近几年比较火的知识付费,好歹科班出身的程序猿,难不成我还不能给人家讲讲Java课收一波知识付费,但是奈何才发现是我想的太简单的,没有流量就没有销量,我还想着到处线下拉流量,但是这年头做知识付费真难,最后钱没有赚到,现在连找份工作都难,因为低的岗位看不上,高的岗位人家也觉得我手高眼低

我大概年初2月份就开始投简历,投了超多的简历,天天面试面试面试面试面试面试面试…庆幸的是还是上岸了(嘻嘻开心开心)。但其实所谓的庆幸也是靠努力堆起来的,我记忆力还比较好,背一背,没啥难的,背了1000道题。。。

今天给大家分享一下“美团+字节跳动+腾讯”这三家的,每家一二三面,我想大家可以自己测试一下能坚持到哪里。

先来看美团

美团的话,三面下来,设计的内容知识也是挺广的吧,有MySQL、Redis、Kafka、线程、算法、+、volatile、线程、并发、设计模式等等…
在这里插入图片描述

一面问题:MySQL+Redis+Kafka+线程+算法

  • List itemmysql知道哪些存储引擎,它们的区别
  • mysql索引在什么情况下会失效
  • mysql在项目中的优化场景,慢查询解决等
  • mysql有什么索引,索引模型是什么
  • B-树与B+树的区别?为什么不用红黑树
  • mysql主从同步怎么做
  • 乐观锁与悲观锁的区别?
  • binlog日志
  • redis 持久化有哪几种方式,怎么选?
  • redis 主从同步是怎样的过程?
  • redis 的 zset 怎么实现的?
  • redis key 的过期策略
  • hashmap 是怎样实现的?为什么要用红黑树,而不用平衡二叉树?为什么在1.8中链表大于8时会转
  • 黑树?HashMap为什么线程不安全的?
  • 如何实现线程安全的hashmap?
  • select 和 epoll的区别
  • http与https的区别,加密怎么加的?
  • raft算法详细讲解
  • Kafka 选主怎么做的?
  • kafka如何保证生产与消费都是同步的?
  • kafka 怎么保证不丢消息的
  • redis如何保证高可用
  • 算法:剪绳子(贪心或递归解决)
  • 算法:给前序和中序遍历,重建二叉树

二面(volatile+线程+并发+算法+设计模式)

  • 自我介绍
  • 讲讲项目(项目没啥亮点,直接问基础)
  • volatile作用?底层实现?禁止重排序的场景?单例模式中volatile的作用?
  • 如何构造线程池,它的参数,饱和策略?
  • 公平锁和非公平锁区别?为什么公平锁效率低?
  • 线程都有哪些状态?
  • 线程、进程、协程的区别?
  • 同步队列器AQS思想,以及基于AQS实现的lock,。
  • 并发工具类CountDownLatch、CyclicBarrier、Semaphore介绍
  • Execuors类实现的几种线程池类型,最后如何返回?
  • 手写单例模式
  • 手写消费者生产者模式
  • 算法:反转单链表
  • 算法:给定一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长的包含有效括号的子串的长度。

三面

这一面,没问啥东西,主要聊人生,和未来3年的规划。。。。。。

第二个是字节跳动

在这里插入图片描述
一面:算法+数据库+事务+网络

  • 自我介绍
  • 项目介绍(没亮点,还是问基础)
  • 堆排序的原理及时间复杂度,是否稳定,最坏及最坏场景。
  • Object类都有哪些方法?
  • DNS解析的过程/浏览器输入一个url,敲下回车后网络的全过程
  • HTTP和HTTPS的区别
  • UDP怎么实现可靠传输
  • 介绍下https,是如何加密的,加密算法
  • 数据库索引的优缺点,以及什么时候数据库索引失效
  • 事务的隔离级别?
  • 数据库的脏读,不可重复读,幻读
  • 算法:接雨水:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨
  • 后能接多少雨水。
  • 算法:N皇后

二面:Kafka+redis+算法

  • Kafka的特性?
  • Kafka中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序是什么?
  • 消费者重平衡(高可用性、伸缩性)
  • 哪些情景下会造成消息漏消费?
  • 如何保证消息不被重复消费(幂等性)
  • KafkaConsumer是非线程安全的,那么怎么样实现多线程消费?
  • Kafka生产者客户端中使用了几个线程来处理?分别是什么?
  • 消费者与生产者的工作流程:
  • topic的分区数可不可以增加?
  • 算法:二叉树中的最大路径和
  • 算法:给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。

三面:Redis+Spring+Dubbo+算法

  • redis的Zset怎么实现的?
  • sentinel和cluster区别和各自适用场景
  • redis cluster集群同步过程
  • redis单线程为什么快?
  • mybatis一级缓存和二级缓存
  • spring如何解决循环依赖?
  • spring AOP的原理。
  • spring的生命周期。
  • Dubbo服务暴露和引用过程,负载均衡策略,容错机制在哪里实现的源码
  • 项目中遇到了哪些问题。(抱歉,我的工作就是增删改查,没接触过相关问题)
  • 算法:二叉树的镜像
  • 算法:从上到下打印二叉树

最后瞄一眼腾讯

腾讯这三面下来问的也不少,自求多福吧。
在这里插入图片描述
一面

  • 如何设计一个秒杀系统?
  • 一天爬一千万条文章,怎么做设计?怎么并行协调?100 台服务器怎么尽可能负载均衡?
  • 有用过短域名服务吗,能说一下吗?
  • 微服务的特点,如何实现服务发现和负载均衡
  • 如何排查线上问题?(背过,没排过)
  • 贝叶斯的概率学原理
  • 负载均衡的加权轮询算法怎么实现
  • 如果用户量大幅度上涨,如何优化?
  • paxos算法(这个算法太难,学的时候就没太理解)
  • 平时都看什么博客,最近看什么书了

二面

  • 自我介绍
  • 项目介绍
  • redis的5种类型,及其实现原理
  • 如何使用redis的Zset实现延时队列?
  • redis如何实现高可用?
  • redis缓存穿透、缓存击穿、缓存雪崩
  • 布隆过滤器的实现
  • 如何保证mysql与redis的双写一致性?
  • 负载均衡算法有哪些?
  • 服务发现是怎么实现的?
  • 熔断是怎么实现的?
  • 算法:连续子数组的最大和
  • 讲讲分布式CAP和BASE?
  • 什么是强一致性?
  • 分布式事务的解决方案?
  • TCC(两阶段型、补偿型)
  • id生成器如何实现?
  • 如何判断一个图是否有环?
  • 一致性Hash算法,及其应用
  • 背包问题

三面

  • 自我介绍
  • 项目介绍
  • redis的zSet如何实现?
  • redis持久化机制。
  • redis的Hash类型讲解,渐进式rehash。
  • HashMap原理,一个put操作,都有什么流程?
  • nginx有自己配置过吗(这个是我唯一手动操作过的,这个不是背的)
  • nginx的使用场景。
  • 什么是分布式,什么是集群,区别是什么?
  • 在基于dubbo的分布式环境中,一般将超时timeout设置在provider还是consumer?
  • dubbo中负载均衡的策略有哪些?
  • 接口的异步调用?如何设置?运行效果?
  • 谈谈基于dubbo的系统中consumer集群的解决方案?
  • mysql是集群还是单节点?最大连接数,最大的表中数据量大约是多少?
  • mysql主从复制主要有哪几种模式?
  • mysql索引,B+树,为什么不用红黑树?
  • 数据库垂直与水平拆分怎么做。
  • 分布式session设置
  • IO、BIO、NIO,阻塞与非阻塞的区别?
  • 分布式接口的幂等性设计(不能重复扣付款)
  • 算法:二叉搜索数与双向链表(这个懵了)
  • 算法:最长不含重复字符的子字符串
  • 算法:手写快速排序、插入排序、冒泡排序,并分析时间复杂度和空间复杂度,它们的稳定性

结局

看完美团、字节、腾讯这三家的一二三面试问题,是不是感觉问的特别多,可能咱们又得开启面试火箭、工作拧螺丝的模式去准备下一次的面试了。

开篇有提及我可是足足背下了1000道题目,多少还是有点用的呢,我看了下,上面这些问题大部分都能从我背的题里找到的,所以今天给大家分享一下互联网工程师必备的面试1000题。

注意:不论是我说的互联网面试1000题,还是后面提及的算法与数据结构、设计模式以及更多的Java学习笔记等,皆可无条件分享给有所需求的朋友们~

在这里插入图片描述
而且从上面三家来看,算法与数据结构是必备不可少的呀,因此我建议大家可以去刷刷这本左程云大佬著作的 《程序员代码面试指南 IT名企算法与数据结构题目最优解》,里面近200道真实出现过的经典代码面试题。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
其余像设计模式,建议可以看看下面这4份PDF(已经整理)
在这里插入图片描述

更多的Java面试学习笔记如下,关于面试这一块,我额外细分出Java基础-中级-高级开发的面试+解析,以及调优笔记等等等。。。
在这里插入图片描述

以上所提及的全部Java面试学习的PDF及笔记,如果你也感兴趣,我这边可以无条件分享给你,还请各位认可朋友点赞+留言【1】免费获取点这里

如果你觉得自己学习效率低,缺乏正确的指导,可以点这里或者加入资源丰富,学习氛围浓厚的技术圈一起学习交流吧!

群内有许多来自一线的技术大牛,也有在小厂或外包公司奋斗的码农,我们致力打造一个平等,高质量的Android交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

BAT2021年最新一二三 面试问题,挑战一下你能走到哪一步 的相关文章

  • jsonp原理详解——终于搞清楚jsonp是啥了

    一 JSONP的由来 1 Ajax直接请求普通文件存在跨域无权限访问的问题 xff0c 不管是静态页面 动态页面 web服务 xff0c 只要是跨域请求 xff0c 一律不准 2 不过我们发现 xff0c web页面调用js文件则不受跨域的
  • 无人机分类

    无人机分类方式 一 按飞行平台构型分类 无人机可分为固定翼无人机 多旋翼无人机 无人飞艇 伞翼无人机 扑翼无人机等 固定翼无人机 固定翼 xff0c 顾名思义 xff0c 就是机翼固定不变 xff0c 靠流过机翼的风提供升力 跟我们平时坐的
  • python网络编程smtp协议发送电子邮件

    SMTP协议 SMTP 的全称是 Simple Mail Transfer Protocol xff0c 即简单邮件传输协议 它是一组用于从源地址到目的地址传输邮件的规范 xff0c 通过它来控制邮件的中转方式 SMTP 协议属于 TCP
  • 实时通讯技术Ajax,WebSocket,SSE

    实时通讯技术是一项基于web开发的重要技术 xff0c 网站是需要前后端通讯的 xff0c 因此数据刷新的时间就是获取信息的时间 xff0c 为了能准确而有快速的获取信息需要尽可能的提高信息的刷新效率 常见的实时通讯技术 xff1a 通讯方
  • 当前主流的后端语言,谁能夺得桂冠,果然是后生可畏!

    主流后端语言 如今编程语言遍地开花 xff0c 烟花迷乱 xff0c 小编整理了最流行的几种编程语言如下 xff1a 这几种语言都是经久不衰 xff0c 占领着后端编程界的半壁江山 TIOBE上的语言排名 xff1a C Java pyth
  • CVPR2020 | 中科院VIPL实验室录取论文详解

    编者按 xff1a 近日 xff0c 计算机视觉顶会 CVPR 2020 接收论文结果揭晓 xff0c 从 6656 篇有效投稿中录取了 1470 篇论文 xff0c 录取率约为 22 中科院VIPL实验室共七篇论文录取 xff0c 内容涉
  • 迁移学习:他山之石,可以攻玉【VALSE Webinar】Panel实录

    编者按 xff1a 迁移学习是机器学习与计算机视觉中的重要研究问题之一 xff0c 旨在研究如何将一个领域的知识迁移到另外的领域 xff0c 具有重要的研究意义与应用价值 但迁移学习又会存在哪些局限性 xff1f 在实际应用中的价值是什么
  • 「见微知著」(2) - 细粒度视觉检索特辑【VALSE Webinar】Panel实录

    编者按 xff1a 细粒度图像识别和检索的差异有哪些呢 xff1f 细粒度视觉有哪些重要实际应用及重要场景呢 xff1f 未来细粒度图像分析领域又会如何发展呢 xff1f 为此 xff0c VALSE Webinar 2020 20期邀请了
  • VALSE 2020线上大会学生论坛【VALSE Student Seminar】Panel实录

    首届VALSE Student Seminar于2020年7月31日在VALSE 2020线上大会拉开帷幕 xff0c Student Seminar邀请了6名年轻的研究生 xff1a 张士峰 中国科学院自动化研究所 董胤蓬 清华大学 刘宇
  • 见微知著:语义分割中的弱监督学习

    点击上方 深度学习大讲堂 可订阅哦 xff01
  • 曹汛:计算摄像学研究 | VALSE2017之十六

    点击上方 深度学习大讲堂 可订阅哦 xff01
  • Spring常用注解(绝对经典)

    x1f3c6 作者简介 xff1a 哪吒 xff0c CSDN2022博客之星Top1 CSDN2021博客之星Top2 多届新星计划导师 博客专家 x1f4aa xff0c 专注Java硬核干货分享 xff0c 立志做到Java赛道全网T
  • c++排序方式

    选择排序 第一个数和后面n 1个数比 xff0c 找出最小的数 xff0c 替换第一个数 后面依此类推 include lt bits stdc 43 43 h gt using namespace std const int N 61 1
  • 程明明:面向弱监督的图像理解

    点击上方 深度学习大讲堂 可订阅哦 xff01
  • 白翔:复杂开放场景中的文本理解

    编者按 xff1a 李白的 秋浦歌 中有这样一句诗 xff1a 题诗留万古 xff0c 绿字锦苔生 xff0c 描绘了天执笔 地做纸 苔为墨 xff0c 挥毫题字的豪迈场景 xff0c 也展示了自然场景中文本类型的多样性 xff1b 而另两
  • 深度学习高效计算与处理器设计

    编者按 夫因朴生文 因拙生巧 相因相生 以至今日 在人工智能领域 机器学习研究与芯片行业的发展 即是一个相因相生的过程 自第一个深度网络提出 深度学习历经几次寒冬 直至近年 才真正带来一波AI应用的浪潮 这很大程度上归功于GPU处理芯片的发
  • 华科白翔教授团队ECCV2018 OCR论文:Mask TextSpotter

    本文经授权转自我爱计算机视觉52CV 华中科技大学白翔老师团队在自然场景文本检测与识别领域成果颇丰 xff0c 这篇被ECCV2018接收的论文 Mask TextSpotter An End to End Trainable Neural
  • 【CVPR2019】弱监督图像分类建模

    编者按 xff1a 获取大规模数据集的高置信标注是一个难点问题 xff0c 而解决此问题的弱监督学习更贴近人类对世界的认知机制 已有的弱监督图像分类研究 xff0c 通常局限于单标签或者多标签噪声场景 本文中 xff0c 将为大家介绍中科院
  • 重磅|中科视拓开源SeetaFace2人脸识别算法

    今天 xff0c 来自中科院计算所的人工智能国家队中科视拓宣布 xff0c 开源商用级SeetaFace2人脸识别算法 SeetaFace2采用商业友好的BSD协议 xff0c 这是在2016年9月开源SeetaFace1 0人脸识别引擎之
  • 学习笔记

    八种基本排序及其时间复杂度 https blog csdn net yang03 26 article details 80773280 参照上述文章中快速排序算法的源代码进行验证 在在线编程网站http www bccn net run

随机推荐

  • 杂记

    在线键盘敲击练习 xff1a https www dazima cn flash 127 html 有道云笔记网页网址 xff1a http note youdao com Android使用RenderScript实现图片的高斯模糊效果
  • ubuntu开机后桌面显示空白的问题

    原文 xff1a ubuntu开机只显示空白桌面解决方案 摘自 xff1a http www 2cto com os 201305 214687 html ubuntu开机只显示空白桌面解决方案 重新安装如下 xff1a sudo apt
  • 在ubuntu中安装编译工具mingw

    原文 xff1a Mingw xff1a 在Linux系统下编译Windows的程序 链接 xff1a http www sudu cn info html edu 20071227 87635 html Ubuntu下可以直接安装 xff
  • Spring Boot常用注解(绝对经典)

    x1f3c6 作者简介 xff1a 哪吒 xff0c CSDN2022博客之星Top1 CSDN2021博客之星Top2 多届新星计划导师 博客专家 x1f4aa xff0c 专注Java硬核干货分享 xff0c 立志做到Java赛道全网T
  • linux下deb包如何安装

    原文 xff1a 怎么安装deb软件 链接 xff1a http zhidao baidu com link url 61 w 6LOuxz 97ZrSjEDIZemmLBsQTsseXJCRe1qE5PkmFKhF3o8tRmAkBloU
  • ubuntu下用apt-get时一直报[正在等待报头]

    原文 xff1a ubuntu下用apt get是总是出现0 正在等待报头 链接 xff1a http blog csdn net nevasun article details 6268332 分类 xff1a Linux系统管理 201
  • Android软键盘弹出时把布局顶上去的解决方法

    原文 xff1a 解决Andriod软键盘出现把原来的布局给顶上去的方法 xff08 转 xff09 链接 xff1a http blog sina com cn s blog 9564cb6e0101g2eb html 决方法 xff0c
  • 一个android列表的适配器数据异步加载的问题

    一个android列表的适配器数据异步加载的问题 问题现象 xff1a 当点击一个ListView的子项 xff0c 等更新ListView完成时 xff0c 再点击一下ListView的子项 xff0c 程序运行良好 xff1b 当点击一
  • MHA高可用配置及故障切换

    MHA概述 传统的MySQL主从架构存在问题 单点故障 MHA概述 一套优秀的MySQL高可用环境下故障切换和主从复制的软件 MySQL故障过程中 xff0c MHA能做到0 30秒内自动完成故障切换 MHA的组成 MHA Manager
  • setenforce: SELinux is disabled解决方案

    解决方案 第一步 修改配置文件 root 64 www vi etc selinux config SELINUX 61 disabled 该为SELINUX 61 1 第二步 重启nginx服务 systemctl restart ngi
  • OpenStack

    文章目录 OpenStack概述OpenStack简介什么是云计算IaaSPaaSSaaSDaaS OpenStack发展历程OpenStack发展趋势OpenStack工作流程OpenStack管理流程QEMULibvirt OpenSt
  • 利用wget命令获取FTP资源

    wegt命令作用 xff1a 可以从对方的ftp服务器上直接下载现存的软件包 命令格式 xff1a wget ftp IP 软件包名称 若是防止网站上面现在相关软件包可以使用该命令 xff1a wget http IP 软件包名称 验证 x
  • 部署OpenStack架构

    文章目录 OpenStack环境部署部署思路基础环境配置配置OpenStack系统环境配置 Keystone 组件的搭建小结 Glance组件的搭建 OpenStack环境部署 虚拟机设备信息及需求 控制节点 xff08 ct xff09
  • FTP服务与DNS域名解析服务

    文章目录 FTP原理FTP匿名账户的部署过程 xff1a FTP本地用户的部署过程 xff1a 指定用户的宿主目录路径DNS 域名解析服务 DNS正向解析DNS反向解析DNS主从复制 FTP原理 ftp使用场合 xff1a 用于文件的传输
  • 【Redis 1】Redis基础知识概述

    一 Redis简介 1 Redis xff08 Remote Dictionary Server 远程字段服务 xff09 是一个开源的使用ANSI C语言编写 支持网络 科技与内存亦可持久化的日志型 key value数据库 xff0c
  • PXE高效批量网络装机

    文章目录 PXE概述PXE部署kickstart无人值守部署 PXE概述 PXE批量部署的优点 规模化 xff1a 同时装配多台服务器 自动化 xff1a 安装系统 配置各种服务 远程实现 xff1a 不需要光盘 U盘等安装介质 PXE x
  • Firewalld防火墙基础

    Firewalld概述 Firewalld 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具 支持IPv IPv6防火墙设置以及以太网桥 支持服务或应用程序直接添加防火墙规则接口 拥有两种配置模式 运行时配置 xff1a 即
  • iptables防火墙

    文章目录 Linux包过滤防火墙概述iptables的表 链结构iptable安装iptables的管理选项规则的匹配条件 Linux包过滤防火墙概述 netfilter 位于Linux内核中的包过滤功能体系 称为Linux防火墙的 内核态
  • PX4之commander剖析解读-2

    首先 xff0c 感谢 阿木社区 小伙伴们在PX4 方面做出的贡献 在学习px4的过程中 xff0c 我也是个小学生 xff0c 以下作为个人的小心得 xff0c 纰漏蛮多 xff0c 还望各位同仁包涵 期待批评指正 但我们的目的只有一个
  • BAT2021年最新一二三 面试问题,挑战一下你能走到哪一步

    背景 今年实在太难了 xff0c 从去年3月份开始我就选择离职然后单干 xff0c 刚开始和几个同事一起投资开公司 xff0c 想着做近几年比较火的知识付费 xff0c 好歹科班出身的程序猿 xff0c 难不成我还不能给人家讲讲Java课收