字节跳动-游戏客户端实习生-面经

简介: 字节跳动-游戏客户端实习生-面经

一面——2.9 60min 牛客


  1. 自我介绍
  2. 项目里有什么做的比较好的?
  3. 图有什么好处?广搜怎么优化的?
  4. 对象池是自己实现的吗?具体说说怎么实现的?
  5. Dictionary的底层实现
  6. C++ unordered_map?
  7. 哈希表的原理
  8. 数组和链表的区别
  9. 在坐标系中,人在左上角终点在右下角,人每次只能向右或向下走一个单位,请问有多少种走法?
  10. 说几个设计模式
  11. 说一说OSI七层模型和每层的作用
  12. TCP和UDP的区别、如何可靠化?
  13. 线程和进程的区别?
  14. Unity中的物理组件怎么使用?如何做到物理碰撞?
  15. FixedUpdate和Update有什么区别
  16. C#的GC原理
  17. 说一说UGUI
  18. 说一说渲染管线


代码题


数组中三个数和为0的解集


二面——2.19 75min 牛客


  1. 自我介绍
  2. 什么语言熟悉?
  3. C#和C++中的struct有什么区别?
  4. C++中struct和class有什么区别?
  5. const?
  6. 图在深搜广搜的时候如何判断节点是否搜索过?
  7. 怎么优化?
  8. 可以用数组优化吗?C++中的vector可以吗?
  9. 除了数组还能怎么优化?
  10. drawcall?
  11. 纹理图?
  12. 光栅化?


代码题


加起来和为目标值的组合


三面——2.23 50min 牛客


  1. C++11新特性有什么?
  2. Lambda表达式的开销?
  3. 怎么存callback的返回值?
  4. 智能指针哪个熟悉?
  5. 代码题:手写实现shared_ptr,要求:构造函数、拷贝构造函数、赋值函数、析构函数
  6. 对象池怎么实现?
  7. List和LinkedList的区别?
  8. 当要销毁对象池中的GameObject时怎么办?
  9. 最近喜欢玩什么游戏?
  10. 联机游戏怎么实现网络同步?
  11. 状态同步和帧同步在网络开销和防外挂上有什么区别?
  12. 假如某个玩家延迟很高,子弹对着人打会打不到吗?怎么解决?
  13. 如果在较小延迟之内呢?如何解决延迟带来的位置问题?

HR面——2.23 35min 飞书


  1. 自我介绍
  2. 以前游戏开发经历中的体会?
  3. 游戏开发比赛怎么找的队友?
  4. 在之前的项目中自己有什么不足和优点?
  5. 为什么选择你的大学和专业?
  6. 在大学中印象最深的几件事?
  7. 学习成绩如何?
  8. 最早什么时候接触游戏开发?
  9. 复盘面试中的不足以及如何改正?
  10. 如何看待国内游戏?
  11. 父母怎么看待去北京工作和游戏开发?

相关文章
|
算法 测试技术 数据处理
【C/C++ 面试技巧】如何在简单的项目里突出自己的价值?
【C/C++ 面试技巧】如何在简单的项目里突出自己的价值?
401 1
|
2月前
|
缓存 监控 安全
知识图谱和大模型哪个才是大方向?
面对高并发与复杂业务,知识图谱与大模型如何选择?本文从架构、性能与落地场景出发,剖析两者优劣:知识图谱可解释性强但维护成本高,大模型灵活高效却存在幻觉风险。推荐融合策略——以图谱为“锚”保障可靠性,以大模型为“浪”提升灵活性,通过RAG、知识增强等方案实现互补,助力系统设计在速度与稳定间取得平衡。
|
图形学
unity 扇形范围检测目标
本文介绍了两种实现扇形范围检测的方法。第一种方法通过计算目标点与技能释放者之间的距离和夹角,判断目标是否在指定的扇形范围内。代码主要利用了`Vector3.Distance`和`Vector3.Dot`进行距离和角度的计算。 第二种方法则使用摄像机射线检测,分为两个脚本:一个挂载在摄像机上,负责发射多条射线并检测碰撞对象;另一个挂载在目标物体上,处理被发现后的逻辑。摄像机脚本通过`Physics.Raycast`检测敌人或障碍物,并调用目标物体的响应函数。该方法适用于更复杂的场景,如视野检测和敌人发现机制。
|
运维 监控 Cloud Native
深入理解云原生技术:从概念到实践
在数字化转型的浪潮中,云原生技术如同星辰指引航船,引领企业驶向灵活、高效的未来。本文将深入浅出地探讨云原生的核心理念、关键技术及应用实例,旨在为读者揭开云原生的神秘面纱,展示其如何重塑软件开发与运维模式。通过理论与实践的结合,我们将一窥云原生技术的强大动力和无限可能。
|
算法
数据结构与算法-DFS+BFS篇(迷宫问题)
数据结构与算法-DFS+BFS篇(迷宫问题)
331 3
|
存储 缓存 网络协议
深入理解Linux网络——TCP连接的开销
在应用程序里,我们使用多少内存都是自己能掌握和控制的,但是纵观Linux整台服务器,除了应用程序以外,内核也会申请和管理大量的内存。 一、相关实际问题 内核是如何管理内存的
|
存储 C++ 容器
C++ 第九节——map/set(用法+底层原理+模拟实现)
们需要知道的是,Map和Set的底层都是红黑树。
1374 1
C++ 第九节——map/set(用法+底层原理+模拟实现)
|
机器学习/深度学习 数据采集 算法
Python实现随机森林回归模型(RandomForestRegressor算法)项目实战
Python实现随机森林回归模型(RandomForestRegressor算法)项目实战
|
消息中间件 程序员 调度
如何区分进程、线程和协程?看这篇就够了!
以下是内容摘要,已简化并保持在240字符以内: 嗨,我是小米!今天聊聊进程、线程和协程: - **进程**:资源分配基本单位,独立且隔离。 - **线程**:进程内执行单元,轻量级且共享资源。 - **协程**:比线程更轻量,适合I/O密集型任务。 每种都有独特特点和适用场景,选择合适可优化性能。希望对你有所帮助!更多内容,请关注我的公众号“软件求生”。
653 1

热门文章

最新文章