面试真题

技术面 + 非技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
2508 道
技术岗
641 道
非技术岗
1867 道
当前筛选
140 道

按赛道技术岗以技术方向细分;非技术岗按「结构化 / 半结构化 / 无领导 / HR / 职能」细分

按方向/形式点选即筛,再点「全部」还原

按难度

按企业点选查看该公司全部题目

企业:腾讯140 道 · 点击进入查看参考答案

简单操作系统
进程和线程的区别,何时使用多线程和多进程?
结论:进程是资源分配独立单位,线程是调度执行单位且共享进程内存;多进程适合强隔离与CPU密集,多线程适合高并发IO与数据共享。区别:地址空间(进程隔离,线程共享)、通信(进程IPC如管道,线程直接变量)、开销(进程创建切…
🎤 腾讯
简单操作系统
如何查看系统负载?
使用uptime、top、htop或cat /proc/loadavg查看系统负载。核心要点:uptime显示load average三个数值,分别代表1/5/15分钟平均负载;top实时展示包括负载的任务状态;/pro…
🎤 腾讯
简单操作系统
为什么协程更轻量?
结论:协程更轻量因用户态调度、栈小、切换成本低。要点:协程在用户态由程序调度,切换无需内核介入,避免系统调用与上下文切换开销;初始栈仅几KB(如Go 2KB动态扩),线程默认MB级;数量可达百万级而线程受资源限制数千;对…
🎤 腾讯
简单操作系统
线程共享的有什么?
结论:同一进程内的线程共享进程的大部分资源,仅私有少量执行上下文。共享部分:1. 地址空间(代码段、数据段、堆);2. 全局变量和静态变量;3. 打开的文件描述符;4. 信号处理方式;5. 当前工作目录等。不共享(线程私…
🎤 腾讯
简单操作系统
线程和进程的区别?
结论:进程是资源分配的基本单位,线程是CPU调度的基本单位,线程共享进程资源故开销更小。核心区别:1. 资源:进程拥有独立地址空间、文件等资源;线程共享所属进程资源;2. 调度:线程切换只需保存少量上下文,进程切换需切换…
🎤 腾讯
简单操作系统
栈里面除了局部变量,函数参数 返回值,还有啥?
结论:栈帧除局部变量、参数、返回值外还有返回地址、保存寄存器、填充等。要点:call指令压返回地址;函数入口push ebp保存旧基址,设新ebp;callee-saved寄存器存栈;对齐填充满足16字节对齐;可能有异常…
🎤 腾讯
简单操作系统
Linux 如何查看 CPU 核数?
直接结论:使用nproc查看逻辑CPU核数;lscpu查看详细拓扑;或读/proc/cpuinfo。展开:nproc调用sysconf返回在线逻辑核数;lscpu从sysfs采集显示socket、core、thread数…
🎤 腾讯
简单数据库
对 student 表的 name 建索引
结论:对student表name建索引可加速查询但增加维护成本。要点:1. 语法:CREATE INDEX idx_name ON student(name); 默认B+树;2. 优势:等值查询(WHERE name='…
🎤 腾讯
简单数据库
建立索引的 SQL 语句?
结论:建立索引的SQL语句为CREATE INDEX。基本语法:CREATE INDEX idx_name ON table_name(column1,column2); 可加UNIQUE创建唯一索引;建表时PRIMAR…
🎤 腾讯
简单数据库
为什么 B+ 树更适合范围查询?
结论:B+树比B树更适合范围查询,因其叶子节点存储全部数据且通过指针串联成有序链表。核心原理:1. B+树非叶子节点仅存键值不存数据,扇出大、树高矮,单次查询磁盘IO少;2. 所有记录都在叶子节点,且叶子间有双向链表,范…
🎤 腾讯
简单数据库
主键索引 vs 普通索引
主键索引即聚簇索引,普通索引为二级索引。核心差异:1. 存储:主键索引叶子节点包含整行数据,普通索引叶子仅存主键键值;2. 查询效率:主键索引直接定位数据,普通索引需先查主键再回表(除非覆盖索引);3. 约束:主键唯一非…
🎤 腾讯
简单数据库
binlog 存的是什么?
结论:binlog是MySQL服务器层二进制日志,记录所有对数据的修改操作,用于复制和恢复。内容:1.逻辑日志,格式有statement记录SQL、row记录行变更、mixed;2.包含事务事件如Query、Write_…
🎤 腾讯
简单数据库
MySQL 四种隔离级别
MySQL四种事务隔离级别由低到高:1.读未提交(Read Uncommitted):事务可看到其他未提交修改,存在脏读、不可重复读、幻读;2.读已提交(Read Committed):只能读到已提交数据,解决脏读,但存…
🎤 腾讯
简单数据库
MySQL 四种事务隔离级别?
四种事务隔离级别:读未提交(RU)、读已提交(RC)、可重复读(RR)、串行化(S)。RU最低级,允许脏读;RC避免脏读但允许不可重复读;RR为MySQL默认,利用MVCC保证事务内快照读一致,配合间隙锁防幻读;S最高级…
🎤 腾讯
简单数据库
MySQL 锁的分类?
MySQL锁按粒度分为全局锁、表级锁、行级锁;按模式分共享锁(S)和排他锁(X);还有意向锁和间隙锁等。全局锁锁整个库,用于全库逻辑备份(FTWRL);表级锁锁整表,MyISAM默认引擎锁,InnoDB支持显式表锁及元数…
🎤 腾讯
简单数据库
Redis 持久化方案?
结论:Redis持久化方案主要为RDB和AOF,可混合使用。核心要点:RDB(快照)通过fork子进程定时保存内存二进制快照,文件小、恢复快,但可能丢失最后一次快照后数据;AOF(日志)记录所有写命令,支持always/…
🎤 腾讯
简单数据库
Redis 持久化方式?
结论:Redis持久化方式有两种:RDB和AOF。原理:RDB是某时刻数据集的二进制压缩文件,通过save(阻塞)或bgsave(后台fork)生成,适合备份;AOF以日志形式追加写命令,通过fsync策略控制持久化时机…
🎤 腾讯
简单数据库
Redis 持久化方式有哪些?
结论:Redis持久化方式包括RDB、AOF及混合持久化。核心要点:RDB快照式持久化,定时全量保存,成本低但可能丢数据;AOF增量日志记录写操作,数据完整但文件膨胀;混合持久化在AOF重写时融合RDB头与AOF尾,提升…
🎤 腾讯
简单数据库
Redis为什么是单线程?为什么这么快?
结论:Redis采用单线程处理命令以避免锁竞争,其高性能源于内存操作与IO多路复用;单线程原因:CPU非瓶颈,单线程模型简单无需同步,避免上下文切换;快的原因:1)数据存内存,纳秒级访问;2)基于epoll的IO多路复用…
🎤 腾讯
简单算法
手撕 单链表删除指定节点(无头指针,直接给定该节点)
结论:无头指针删除给定节点,采用复制下一节点值并删除下一节点的方法。核心原理:因无法访问前驱,直接将当前节点值替换为下一节点值,再跳过并删除下一节点(node->val = node->next->val; node->…
🎤 腾讯
题目整理自公开面经,答案由校招宝自研生成,仅供参考