腾讯
腾讯一面(1h左右)
- 自我介绍
- 了解阿里健康的业务么
- 你觉得阿里医院这个项目前景如何?
- 在滴滴,redis用了什么数据结构
- MySQL用的是什么存储引擎
- Innodb如何设置事务,你了解Innodb的事务机制是什么样
- 在滴滴,是如何使用RocketMQ解耦的
- 算法1:给定有序数组,求两个和为n的数
- 算法2:给定无序数组,求两个和为n的数
- 算法3:给定一个数组,数组内数字代表柱体高度,此时如果下雨,整个范围可以采集雨水多少?
腾讯二面(1h左右)
- 自我介绍
- Blink是阿里基于Flink开发的还是封装了一下?
- 在字节的项目你参与推荐算法了么,你们是什么推荐逻辑?(规则引擎、定时筛选)
- 筛选后的车系信息存储在redis里,使用什么数据结构?
- set和zset的区别?
- 这些信息如何读取?
- 如果在读取的同时正在插入信息怎么办?(redis事务)
- 介绍redis事务
- 不使用事务如何解决?(备份内存,读写分离)
- 如果不用这种办法,你还有其他方法么?(分布式锁)
- 介绍分布式锁
- innodb如何实现事务(mvcc、间隙锁)
- B+树只有叶子节点存放数据,那会产生什么变化?为什么要这样的结构?
- 算法1:链表中删除重复节点(思路比较简单,但是考验链表coding能力,手写,面试官会裸眼编译。。)
- 设计题1:实现一个内存拷贝函数(memorycopy,入参是一个任意类型的指针,返回拷贝后的内存地址)
- 设计题2:邮箱验证中的链接,如果实现仅一次有效,如何实现有效期30分钟,要完整设计思路,并给出url样例
- 总结:问题均发散问题,很少知识点的固定考核,更多知识点的应用结合,临场发挥因素较大,算法难度不高,但是所有都需要手撕coding。
腾讯三面(30min左右)
- 自我介绍
- 详细聊了聊项目,实习的,实验室的都问了,追问不多,对数据开发很感兴趣
- 两个大文件,每行一个字符串,A文件1T大小,B文件2T大小,求两个文件的交集
- 晚饭时间到了,你如何给一个人推荐饭店?
- 反问
腾讯HR面(30min左右)
- 自我介绍
- 优势劣势
- 之前实习的体验
- 阿里滴滴字节的公司文化
- 拿了哪些offer,在面哪些公司
- 阿里腾讯怎么选
- 选择工作的依据是什么
- HR面试的具体问题记不清了,主要是聊人生,和问公司选择
美团
美团全程视频面试,三轮面试,第三轮面试后有事没有整理面经,所以只有一二轮的面经。
美团一面(50min左右)
- 重写和重载的区别
- 返回值可以作为重载的区分标志么
- ==和equals的区别
- Long a = 1000L 和 long b = 1000L,a == b返回什么?
- Long a = 1000L 和 Long b = 1000L,a == b返回什么?
- Java数据结构了解哪些
- 如果需要保存放入Map中的顺序,使用什么数据结构
- HashMap的底层数据结构,如何扩容
- ConcurrentHashMap如何保证线程安全
- 会哪些设计模式
- 介绍一下策略模式
- 写一个单例模式(coding,写的双重校验锁,用的synchronized)
- 除了synchronized还有什么锁?
- 换成ReentrantLock写一下
- 写一个死锁(coding)
- 项目中是如何使用MQ的
- mysql的B+树结构讲一下
- 数据库的隔离级别,分别解决了什么
- join的用法
- left join什么效果
- 数据库分页的写法limit
- ACID分别代表什么
- 网络协议分几层
- TCP在哪一层?
- 三次握手四次挥手
- RPC框架了解哪些,用的什么协议?
- HTTP的请求方式常用的哪几种,什么区别?
- 幂等性
- HTTPS是如何实现的
- 有git仓库么?
- 如何学习一项新的语言或者新的技术的?
- 看过什么博客或社区?
- 反问
美团二面(50min左右)
- 自我介绍
- 觉得最难最有收获的项目、收获在哪
- Redis的数据类型
- 如何解决缓存雪崩(要求说出多种办法)
- TCP三次握手
- 树的前中后序遍历有什么区别
- 排序算法了解哪些
- 最快的排序算法是什么
- 讲一下快排
- 拿了哪些offer、在面哪些公司
- SpringMVC和SpringBoot的区别
- MyBatis中如何防止sql注入
- SQL:表(姓名、科目、成绩),统计每个人的所有科目得分总和(coding)
- 算法:两个字符串,找出最长公共子串(coding、测试点)
- 设计:一个每天100w订单量的系统现在要变成1000w以上,如果你是架构师,你如何考虑这个问题
滴滴
滴滴一面
- 自我介绍
- 滴滴的项目
- 字节的项目
- redis怎么用的
- 分布式锁
- 滴滴中是什么场景用到了分布式锁
- 可以优化不用么?
- 算法:n+1长度数组,内是1~n的数,找出重复的数(要求:时间复杂度O(n),空间复杂度O(1),并且不可以修改原数组,将数组转成链表,用链表求环入口的方式解,需要coding、测试点)
- 反问
滴滴二面
- 自我介绍
- 字节项目
- 为什么数据存redis不存mysql
- 阿里项目
- 大数据价值理解,一些实时计算场景的问题
- Blink和Redis(迷惑的问题,这俩有关系么)
- 批处理和流处理
- 多线程的使用方式
- Thread、Runnable、Callable的区别
- 线程安全的数据结构
- HashTable和ConcurrentHashMap的线程安全方式
- JavaNIO
- IO多路复用
- 为什么epoll比select快,优化哪些地方
- Redis中zset的底层
- 跳表的时间复杂度?为什么?
- Redis的分布式架构
- 哨兵模式下的选举算法
- Redis节点间通信协议
- 数据库Innodb了解
- mvcc
- 算法1:数组的最大连续子数组和(coding、测试点)
- 算法2:判断二叉树是否是搜索二叉树(coding、测试点)
滴滴三面
- 自我介绍
- 实验室项目、你负责什么
- 具体讲一下各个状态
- 如果同时两个管理员进行团标进行审批会不会发生并发不安全
- 怎么解决?
- 你觉得项目中最重要的,或者最难的问题是什么?
- 字节项目,详细讲讲
- 规则引擎相关
- 关于项目中redis数据存储和cron的一些问题
- 项目带来最大的提升
- 上线后遇到什么问题没有,怎么解决
- 滴滴项目详细讲讲
- 各种活动、规则具体怎么配置
- 奖励计划、奖励实施、奖励追回具体逻辑
- 为什么春招不选择来滴滴继续实习?
- 介意换技术栈么(Golang、PHP)?
- 算法1:打印0~9,用递归和迭代两种方式实现(福利coding)
- SQL:流水明细表t(流水号、用户姓名、商品名称、单价、数量、日期)统计:8月份消费金额总和最高的前三名用户的姓名(coding)
读者福利
分享一下我自己收集整理总结的大厂高频面试题目(含答案解析)希望能帮助粉丝朋友们拿到心意的offer。(有想要获取的朋友:一键三连(点赞+收藏+关注) 后,添加微信:mxm9843 即可免费获取到)
学习笔记 (文末获取)