面试真题

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

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

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

按难度

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

难度:简单 · 企业:字节跳动9 道 · 点击进入查看参考答案

简单C++
怎么解决C++菱形继承
结论:C++菱形继承用虚继承解决。要点:1.中间类继承公共基类加virtual关键字(如class B: virtual public A);2.虚继承使底层基类在派生类对象中仅一份实例,消除二义性;3.虚基类构造由最底…
🎤 字节跳动
简单C++
C++多态解决了什么问题
多态解决用统一基类接口操作不同派生类对象的问题,消除大量类型分支判断,提升代码扩展性与可维护性。C++含静态多态(重载、模板,编译期绑定)和动态多态(虚函数,运行期绑定)。动态多态核心:基类声明virtual函数,派生类…
🎤 字节跳动
简单C++
enum和enum class的区别?
结论:enum class是C++11强类型枚举,比传统enum更安全。核心区别:1.作用域:传统enum枚举量在外层作用域,易冲突;enum class枚举量在类作用域内,需用Enum::Val访问。2.隐式转换:传统…
🎤 字节跳动
简单Java
面向对象编程的三大核心概念和5大基本原则
结论:三大核心为封装、继承、多态;五大基本原则(SOLID)为单一职责、开放封闭、里氏替换、接口隔离、依赖倒置。原理:封装隐藏属性与实现,通过公有方法访问;继承实现代码复用并建立类层次;多态允许父类引用指向子类对象,动态…
🎤 字节跳动
简单其他
面对对象的三大特征及特性
结论:面向对象三大特征为封装、继承、多态。核心要点:1.封装:将数据和操作封装在类内,私有化属性公开方法,降低耦合保障安全;2.继承:子类通过extends获取父类非私有成员,实现复用与层次化;3.多态:父类引用指向子类…
🎤 字节跳动
简单数据库
Redis SETNX与SET NX 的区别
结论:SETNX是独立命令仅做存在则设值,SET NX是SET命令的选项可原子附带过期等参数。区别:1.SETNX key value:key不存在时设值,返回1/0,无法同时设过期,需额外EXPIRE;2.SET ke…
🎤 字节跳动
简单算法
算法 反转链表
结论:单链表反转可用迭代或递归,迭代法空间O(1)最优。核心要点:迭代用三指针prev、cur、next;初始prev=null,cur=head;循环:next=cur.next暂存,cur.next=prev反转指向…
🎤 字节跳动
简单算法
算法 镜像二叉树
结论:镜像二叉树即将每个节点的左右子树互换,得到原树的镜像。核心要点:采用递归,若当前节点为空直接返回;否则递归镜像左子树和右子树,然后交换当前节点的左右指针;也可使用层序遍历(队列)逐个交换节点左右孩子。本质是对树中所…
🎤 字节跳动
简单算法
算法 求链表相交的点
结论:求两单链表相交的起始节点,最优用双指针法,时间O(n)空间O(1)。核心要点:设链表A长度a+c,B长度b+c,c为公共尾部;指针pA从A头走,到尾后跳到B头;pB从B头走,到尾后跳到A头;因pA走a+c+b,pB…
🎤 字节跳动
题目整理自公开面经,答案由校招宝自研生成,仅供参考