面试真题

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

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

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

按难度

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

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

中等算法
算法:三数之和(Leetcode 15)
结论:三数之和通过排序加双指针在O(n^2)内找出所有和为0且不重复的三元组。核心要点:1) 数组升序排序;2) 枚举第一个数i,若nums[i]>0提前结束,若nums[i]==nums[i-1]跳过去重;3) 左指针…
🎤 腾讯
中等算法
算法:LCA 最近公共祖先(递归 + 哈希解法)
结论:最近公共祖先(LCA)可用递归后序查找或哈希父节点法求解。核心要点:递归法:若根空或根等于p/q返回根;递归左左、右右;若左右均非空则当前根是LCA,否则返回非空的哪边。哈希法:DFS遍历时用哈希表记录每个节点的父…
🎤 腾讯
中等算法
算法题:最长无重复字符子串(滑动窗口)
结论:使用滑动窗口配合哈希表存储字符最近出现下标,动态维护无重复子串左右边界,O(n)时间求最长长度。要点:初始化左指针left=0、最大长度max=0、哈希表记录字符最新下标;右指针right遍历,若s[right]在…
🎤 腾讯
中等网络
客户端分别通过 tcp 和 udp 发三个包,服务端会收到几个包?
结论:TCP发送三个包,服务端收到的数据量等同但包数不确定(可能1到多个);UDP发送三个包,服务端确切收到三个数据报(无丢失时)。 要点: - TCP是面向连接的字节流,无消息边界;发送端三个写操作可能被合并(Nagl…
🎤 腾讯
中等网络
连接断开有几种判定方式?
结论:连接断开判定方式主要有TCP keepalive、应用层心跳、读写返回值及超时。要点:1)TCP keepalive:开启后闲置发送探测包,多次无响应则断开;2)应用层心跳:约定周期发包,超时未收到对端心跳即判断;…
🎤 腾讯
中等网络
为什么要结合对称加密和非对称加密?
结论:结合对称与非对称加密可兼顾安全与性能。要点:对称加密(如AES)速度快但密钥分发难;非对称加密(如RSA)公钥分发安全但计算慢;实际用非对称加密传输对称密钥,后续用对称加密通信;依赖证书防中间人。关键原理:非对称解…
🎤 腾讯
中等网络
CLOSE_WAIT状态下什么时候发送FIN报文?
结论:TCP被动关闭方在CLOSE_WAIT状态下,只有当应用层调用close()释放套接字时才会发送FIN报文。原理:四次挥手中,被动方收到对端FIN后回复ACK,状态变为CLOSE_WAIT,此时连接处于半关闭,被动…
🎤 腾讯
中等网络
recv返回值,什么错误是可接受的
结论:recv返回>0表示接收字节数,0表示对端关闭连接,-1表示出错并设置errno;可接受的错误包括EAGAIN/EWOULDBLOCK(非阻塞socket暂无可读数据)、EINTR(被信号中断)。核心要点:1. 返…
🎤 腾讯
中等网络
TCP 滑动窗口机制是什么?
结论:TCP滑动窗口是实现流量控制和可靠传输的核心机制,允许发送方在未收到确认时连续发送多个报文段。原理:接收方在TCP首部通告窗口大小(rwnd),发送方维护发送窗口(包含已发送未确认和允许发送但未发送部分);每收到一…
🎤 腾讯
中等网络
TCP 拥塞控制机制有哪些?
结论:TCP拥塞控制含慢启动、拥塞避免、快重传、快恢复。原理:发送方维护拥塞窗口cwnd和慢启动阈值ssthresh;慢启动:连接初cwnd=1,每收到ACK翻倍直到ssthresh;拥塞避免:cwnd线性+1;丢包判定…
🎤 腾讯
中等网络
TCP如何保证传输可靠性?
TCP可靠性保证机制:1) 序列号与确认应答:每个字节编号,接收方累计确认,保证有序到达与去重;2) 超时重传与快速重传:未收到ACK则重发,收到重复ACK触发快速重传;3) 滑动窗口与流量控制:接收方通告窗口限制发送量…
🎤 腾讯
中等网络
TIME\_WAIT 状态含义
结论:主动关闭方在发送最后ACK后进入TIME_WAIT,持续2MSL。要点:作用为确保最后一个ACK到达对端,若ACK丢失对端重发FIN可再次响应;同时让旧连接残留报文在网络中消失,防止新连接收到旧数据;出现在TCP四…
🎤 腾讯
中等网络
TLS 握手过程(含证书验证和密钥协商)
结论:客户端与服务器协商加密套件,验证证书,生成会话密钥。要点:ClientHello发送支持的加密套件和客户端随机数;ServerHello选定套件,发服务器随机数和证书(含公钥);客户端验证证书链、有效期、域名,用证…
🎤 腾讯
中等网络
拥塞窗口何时变成一半?
结论:在TCP拥塞避免阶段,发生快速重传(收到3个重复ACK)时,拥塞窗口减半;若发生超时,阈值ssthresh设为cwnd/2但cwnd重置为1。原理:Reno算法中,3个重复ACK表明轻微拥塞,执行快速恢复:ssth…
🎤 腾讯
中等运维
程序CPU占用率较高,如何排查?
结论:先定位高占用进程与线程,再结合栈信息找热点代码。步骤:1. 使用top或htop查看CPU占用高的进程PID;2. 通过top -H -p PID或ps -Lf PID查看具体线程,记录高占用线程ID(TID);3…
🎤 腾讯
中等运维
容器之间是如何隔离的?
结论:容器隔离依赖Linux Namespace做视图隔离,Cgroups做资源限制。原理:Namespace提供PID、Mount、Network、UTS、IPC、User六种隔离,使容器拥有独立进程空间、网络栈和文件…
🎤 腾讯
困难后端
开放性问题,设计微信的海量数据存储系统
结论:微信海量数据存储需分层设计,核心包括消息、关系链、朋友圈、用户资料等,采用分布式存储与缓存结合。 要点: - 消息存储:按用户ID哈希分库分表,采用KV存储(如HBase)或自研,冷热分离; - 关系链:图数据库或…
🎤 腾讯
困难后端
手撕多线程 Reactor
结论:Reactor模式采用事件驱动,主线程监听新连接并分发给多线程工作池;核心包括EventLoop、Channel、Poller(如epoll)。原理:基于I/O多路复用,主Reactor用epoll_wait获取连…
🎤 腾讯
困难数据库
跳表怎么做并发的?以RocksDB为例阐述
结论:跳表并发多采用无锁或细粒度锁,RocksDB跳表读无锁、写用原子操作+内存屏障,允许并发读和单写或有限并发写。原理:RocksDB MemTable跳表实现中,查询完全无锁遍历;插入时,从底向上插入,使用std::…
🎤 腾讯
困难数据库
Redis 和 MySQL 如何保证一致性?
常用Cache Aside Pattern(旁路缓存)保证最终一致:读先缓存未命中读库回写;写先更新MySQL再删Redis缓存(而非更新缓存,避免脏数据)。问题:删缓存失败或并发读写不一致。解决:1.延迟双删(更新库-…
🎤 腾讯
‹ 上一页第 7 / 7 页
题目整理自公开面经,答案由校招宝自研生成,仅供参考