字节跳动 游戏研发实习生 面经

一面(44min)

C++

  1. C++常用的stl容器
  2. vector和list的区别
  3. vector的扩容
  4. C++的多态
  5. 虚表是不是每个对象都有一份
  6. 虚函数是否能声明为 inline
  7. 构造函数能否为虚函数
  8. 智能指针shared_ptr
  9. 如果让你实现一个shared_ptr, 引用计数会使用什么类型

计算机网络

  1. 网络模型
  2. 我们现在进行的视频面试, 描述一下各网络模型各层都做了什么
  3. TCP和UDP的区别
  4. 在联机游戏中, 哪些方面使用TCP, 哪些方面使用UDP
  5. 联机游戏常见的网络同步
  6. 帧同步和状态同步的区别, 优缺点

操作系统

  1. 线程与进程
  2. 游戏一般有哪些线程
  3. 进程的内存空间
  4. 虚拟地址和物理地址

项目相关

  1. 有没有了解NavMesh是如何生成网格的
  2. A*算法
  3. 有没有了解过UE中事件驱动的行为树
  4. 你认为项目中哪个方面做的比较好

其他

  1. 最近有没有看什么书籍, 学习了什么
  2. 玩什么游戏

反问

二面(61min)

C++

  1. C++单继承的对象模型, 多继承呢?
  2. 介绍一下移动构造函数
  3. 介绍一下右值引用
  4. 可执行程序的编译过程
  5. 链接过程的重定向做了什么
  6. 动态链接和静态链接
  7. 可执行文件的结构可执行文件的结构
  8. 进程的内存空间
  9. 堆和栈空间的区别
  10. 移动栈顶指针的系统调用是什么
  11. 两个进程同时操作一个数据可能会发生什么
  12. C++的智能指针有几种, 分别有什么作用
  13. C++有几种类型转换cast, 分别有什么作用

数据结构

  1. vector和list有什么区别
  2. 空间局部性原理
  3. 堆的数据结构完全二叉树
  4. 描述一下堆排序, 它的时间复杂度是多少
  5. map和unordered_map的区别
  6. 哈希表的实现原理

计算机网络

  1. 网络模型
  2. 传输层有什么协议
  3. TCP为什么连接时要进行三次握手
  4. 介绍一下read和recv系统调用
  5. IO多路复用

操作系统

  1. 进程和线程
  2. 线程的调度算法
  3. 进程有哪些状态, 这些状态是怎么转换
  4. 什么情况下线程不会进入Ready状态

linux

  1. 有没有接触过linux
  2. 了解linux内核吗
  3. 知道linux的vfs(虚拟文件系统)吗

python

  1. pythonGC的作用, 介绍一下python的GC
  2. python是如何实现动态类型的

算法题

  1. 给定一个完全二叉树, 判断其结点数量与k的关系(大于/小于) 要求: 时间复杂度 O(log(n))

解: 将结点依次编号, 当前结点(假设编号为m)的父节点的编号可以算出为(m/2) 假如这颗完全二叉树有k个结点, 那么k/2可以得出父节点的编号. 再不断除2直到根节点. 此时得到了一条从根节点通往第k个结点的路径, 从根节点沿着该路径寻找. 如果找到编号为k的结点说明树的结点数量大于等于k, 如果没有找到编号为k的结点说明结点数量小于k

项目

  1. 行为树

反问

二面凉

这种 游戏研发 的岗位一般都是不分客户端和服务端的,计网相关的内容会比较深入。二面的时候比较深入的计网内容和linux内容都不会,python也了解的不是很深。

#牛客AI配图神器#

#面经##游戏客户端##暑期实习##游戏研发实习##字节跳动#
全部评论
实习生都这么难啊
点赞 回复 分享
发布于 昨天 14:31 上海

相关推荐

昨天 18:02
已编辑
门头沟学院 Unity3D客户端
一面面经#腾讯# #面经# #游戏求职进展汇总# 忘记录音了所以顺序不一定算法题1. 21. 合并两个有序链表 - 力扣(LeetCode)2. 98. 验证二叉搜索树 - 力扣(LeetCode)+验证完全二叉树3. 84. 柱状图中最大的矩形 - 力扣(LeetCode)项目+八股1. 自我介绍下2. 喜欢玩什么游戏3. 最近在做什么? 答:写TCP、UDP Socket4. 遂开始问计网,TCP、UDP有什么区别,会用在哪些场景5. UDP的不安全性怎么解决6. 超时重传的细节,服务器客户端怎么知道丢包了7. 了解KCP是怎么解决UDP的不安全问题吗8. 状态同步和帧同步的区别9. 有没有把上面的知识用到项目中?10. 问项目细节,介绍一下简历上写的游戏框架11. Buff系统中的Buff是否支持叠层12. 能支持多少“种”Buff,你是怎么区别策划设计的Buff的?13. 多线程和异步的区别14. 锁和信号量的区别15. Unity中怎么防止在异步中调用Unity中的主线程的方法、参数16. OOP的概念17. CPP中的多态是怎么实现——虚函数虚函数表相关18. C#中的List和数组的区别19. C# 中LinkedList和List的区别20. 值类型和引用类型区别21. struct和class的区别22. 什么时候用class什么时候用struct23. 可以实习多久,什么时候可以到岗?反问1. 面试官是哪个项目组的2. 项目是什么技术栈——Unity3. 今天面试表现怎么样,哪里需要提升——基础不错,需要精进简历的项目,提升项目复杂度,建议把网络联机的知识用到项目中4. 后面还有几轮面试?——看情况还有一到两轮背了好久的计组和cpp八股结果没咋问面试官人很温和
查看23道真题和解析 游戏求职进展汇总
点赞 评论 收藏
分享
评论
5
10
分享

创作者周榜

更多
牛客网
牛客企业服务