腾讯 腾讯文档 客户端开发一二面

4.1一面30分钟

项目拷打

  • 程序链接的过程
  • 简单介绍一下死代码消除的原理
  • Clang和GCC的区别
  • LLVM源码、GCC源码相关
  • X86的汇编想在Mac(ARM)上运行怎么办(Qemu模拟器)
  • 不用模拟器怎么整(二进制翻译或者重新编译吧)
  • SSA是什么(静态单变量赋值)
  • 其他的跟项目相关度比较高就不提

八股

  • 排序算法有哪些
  • 堆排序时间与空间复杂度
  • 堆的原理
  • 做一个排行榜,随时都能看到排名前十个(堆)
  • 排行榜是稳定的吧,堆合适吗?
  • 有没有其他合适的数据结构

4.3二面30分钟

八股盛宴

  • 为什么投后台开发
  • C++结构体的字节对齐
  • 大端小端
  • 用代码判断当前机器的大端小端模式
  • volatile关键字
  • Linux下虚拟内存布局
  • C++多态怎么实现的
  • 虚函数原理
  • C++static使用场景及其效果
  • 修饰全局变量时什么时候初始化的
  • C++模板特化和偏特化
  • extern C的作用和原理
  • C++有没有什么通用化的优化方案
  • 非递归遍历二叉树口述
  • TCP和UDP差异
  • TCP中的time wait状态
  • Linux的fork用法
  • iNode是什么
  • 软链接、硬连接

聊一下项目

  • LLVM和GCC的差异
  • C++并发能力都是系统提供的,GO语言的协程可能是怎么实现的?(没接触过GO,瞎答)

总结

总体回答8成以上吧,场景题回答地都不咋地。全程手撕都没有,我还期待着写写代码。二面之后的清明假期就给我挂了。反问环节了解到对方的业务主要是Web Assembly相关的开发,尝试把移动端的代码进行复用。

全部评论

相关推荐

4 6 评论
分享
牛客网
牛客企业服务