【25暑期总结】面经/面试知识点梳理&腾讯OC

这段时间高强度面试,腾讯、字节、阿里和快手总共十几轮,最终幸运地拿下了腾讯的 Offer,今天得空整理一下面试中出现的知识点(拿 AI 总结了下,要点基本是全的)

一、技术类问题

(一)数据结构与算法

  • 二叉树相关:如何用递归和迭代求二叉树的最大深度,对应的时间复杂度和空间复杂度是多少?
  • 字符串处理:给定一个字符串,输出所有合法的 IP 地址;求最长非重复子串
  • 其他:四点构成正方形的边界条件判断;n个节点的二叉树总共有多少种;在[1,N]范围内的N个数,统计每个数出现的频次(要求时间复杂度O(N),空间复杂度O(1)

(二)编程语言

  • C++string底层实现,了解短字符串优化吗;设计一个string模板类的思路;sizeof字符串大小;是否了解span;智能指针相关知识;写代码实现类型转换操作(如子类转父类)及使用频率;如何将头文件拆分并使用g++命令行编译运行;几种 cast 的区别;Debug 模式和 Release 模式的区别,Release 的优化措施
  • C 语言:static 关键字的作用

(三)操作系统

  • 进程,线程和协程的区别
  • 系统调用的概念及实现方式(如mmap
  • XV6 的进程调度类型,能否自定义按优先级进行调度
  • 进程间互相交互的方式,进程间通信的方式
  • 系统调用相关机制,是否所有系统调用都使用相同的中断,系统调用表包含的内容
  • 触发系统调用的中断与其他中断(如定时器中断、键盘鼠标中断)的区别,系统中的中断向量表
  • 缺页中断的原理,页表大小

(四)计算机网络

  • HTTP 协议通信原理,HTTP/2 相比 HTTP/1 的优势
  • TCP 和 UDP 的区别,UDP 的特点,粘包拆包问题
  • 网络劫持的方式(如中间人攻击、DNS 劫持)
  • HTTPS 的安全传输机制
  • 网络编程相关八股(从 socket 多线程到 IO 多路复用,epoll 实现方式,主从 Reactor,可以看看 Nginx 如何建立新连接)
  • 了解哪些网络测量、优化算法等方面知识,最近关注的网络领域前沿动态

(五)数据库

  • 常见数据库(如 Redis、MySQL、PostgreSQL、MongoDB 等)的特点及数据结构
  • Redis 实现过期的策略,Redis 系统扩容的操作
  • MySQL 支持的引擎及特点,查询语句中判断索引是否被执行的方法
  • JOIN 的语意和分类
  • 数据库文件存储格式,SEQSCANINDEXSCAN的实现及区别
  • Copy-On-Write Trie 的目的和好处,HyperLogLog 的实现原理,LRU-K 页面置换算法基本原理及用到的数据结构
  • 缓冲池插入数据时已满和未满的情况处理
  • 可扩展哈希的实现、扩容及与其他哈希的对比
  • 数据库优化实验中发现性能瓶颈的方法

(六)分布式系统

  • ZooKeeper 服务注册原理和负载均衡原理,部分服务节点出现问题时客户端的调整策略
  • 负载均衡的一致性哈希算法,是否存在并发问题,一台机器挂了流量的分配情况

二、项目类问题

  • 介绍项目中做得不好需要改进的地方
  • 项目中遇到的问题及解决方法(如 HTTP 协议解析耗时问题、时间轮处理长连接问题等)
  • 项目的目的和背景,与市面上现有框架相比想要实现的目标
  • 项目中使用某些技术(如 Protobuf、协程、ZooKeeper 等)的原因
  • 口述项目中的设计思路(如 RPC 事件处理模型、数据库相关设计等)
  • 项目是独立完成还是与他人合作完成

三、通用类问题

  • 了解 Linux 常用命令吗
  • 自我介绍
  • 本科没有实习的原因
  • 自身优点、困难挫折经历
  • 平时是从哪些渠道学习新技术的
  • 职业规划
  • 家庭情况
  • 读博还是工作的想法,导师情况,科研体系,毕业论文准备情况
  • 如何了解到投递团队并决定投递的原因,对该领域感兴趣的原因及难点
  • 实习时间、实习地点要求,已进行面试的次数,是否有心仪的公司

四、反问

  • 可以介绍一下部门做的是什么业务,有什么分工吗
  • 可以评价一下我的面试表现吗?我还有哪些地方可以提升
  • 可以问一下咱们组对于新人的入职培养是怎样的

五,腾讯面试 Timeline

  • 简历投递:2025/02/21
  • 一面:2025/02/28
  • 二面:2025/03/10
  • 三面:2025/03/14
  • HR 面:2025/03/21
  • 云证:2025/03/21,HR 当天发云证
  • OC:2025/03/25,隔了一个周末

整体面下来,感觉还是需要好好巩固基础知识,希望我总结的这些点能够帮到大家。最后祝愿大家都能顺利拿到 Offer!

#字节##腾讯##面试##暑期##总结#
全部评论
接好运
2 回复 分享
发布于 04-01 11:08 湖南
mark,一起当同事
1 回复 分享
发布于 03-31 01:46 重庆
项目的目的和背景,与市面上现有框架相比想要实现的目标 这怎么答得 佬
1 回复 分享
发布于 03-29 19:54 江苏
接好运
点赞 回复 分享
发布于 05-12 18:51 黑龙江
啥岗位呀
点赞 回复 分享
发布于 03-31 13:52 天津

相关推荐

05-28 21:44
已编辑
门头沟学院 golang
5.12云智一面(一个半小时):问实习经历和项目经历居多,这里就不列举出来了,面试官人很好,聊了很多家常,总体氛围很好,以下是问到的八股:1.JWT的工作机制2.Session如何认证?3.session时间管理4.Cookie和Session区别5.Cookie和Seesion如何交互实现用户会话管理6.秒杀系统如何实现分布式锁管理内存7.Redis分布式锁具体实现方案8.分布式锁防止库存超卖的具体实现9.协程的通信方式10进程的通信方式,分别适用于什么场景11.HTTP GET 和POST的区别应用场景,GET真的不会改变数据吗12.四次挥手,主动断开连接的一定是客户端?13.套接字网络编程,以及会用到哪些系统调用无手撕5.15云智二面(一个小时):也是问实习经历和项目经历居多,这里就不列举出来了,以下是问到的八股:1.分布式锁未能成功释放的原因2.项目中数据库表是怎么设计的3.高并发场景,Mysql会面临什么问题,怎么解决4.Mysql的容灾能力,如何避免数据的不一致5.Mysql的bin log6.进程、线程、协程的概念和区别7.进程间、线程间的通信方式8.信号量机制9.HTTPS的工作原理10.SSL/TLS的详细过程手撕:10个goroutine求1到10000的累加和5.22官网进度还是“业务复试”,怀疑是不是凉了,有没有懂的,一般多久下一轮😥许愿二面过,求好运5.23中午了,还是复试。想发邮件问又怕问了秒挂。真的没有机会了吗?我也想成为鹅孝子会赢吗?会赢吗?会赢吗?会赢吗?5.23下午,戏剧性的来了,官网状态先是hr面,过一会hr打电话来了,说再加一轮业务面5.26三面,问了几个项目问题就结束了,20分钟官网状态变回筛选中心态大崩
查看24道真题和解析
点赞 评论 收藏
分享
1、讲一下设备更新的整体逻辑是怎么做的2、为什么使用CompletableFuture,与Future区别是什么3、线程池核心参数4、线程提交任务一共有哪些方式,线程池的工作原理5、为什么使用Reddision分布式锁6、缓冲队列+批量提交是怎么做的7、TP99的概念是什么8、250次合并30次一次为8个设备提交,是这样吗9、场景题:深分页问题+分页问题原生sql语句,亿万级别的数据考虑到分页的要求,sql怎么写10、热点数据Redis具体怎么做的,如何保证数据一致性11、覆盖索引12、数据的事务隔离级别13、场景题:如果同时插入30条范围更新的数据,这30条更新的数据之间有交叉,会发生什么14、索引为什么不用Redis的跳表而是用B+树15、讲了实习中覆盖索引+延迟加载是怎么做的16、使用MQ的原因,以及如何保证数据一致性17、如何保障生产者的高可用性,万一生产者down了怎么办18、布隆过滤器原理19、问了java技术栈最擅长的是什么(java)20、AOP是如何实现的,目的是什么21、 动态代理有哪几种方式22、AOP最常见的使用场景是什么23、你最常使用哪些注解24、场景题,多个设备更新的需求同时打过来,如何保证处理消息队列的顺序与时间上的顺序一致25、热点数据是怎么存储的26、Springbean的生命周期27、Mybatis是如何通过注解生成相应的sql语句的(工作原理  补几个进程间通信方式间隙锁是什么 库存超卖场景能保证唯一性的 UUID 能否作为数据库主键手撕没做出来应该凉了
小博真爱学习:兄嘚你手斯是什么?给了20分钟,让写一个多线程的优先级任务调度,我也没斯出来
点赞 评论 收藏
分享
评论
19
89
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务