首页 > 笔经面经 > C++后台研发工程师2018年BAT华为网易等面经总结

C++后台研发工程师2018年BAT华为网易等面经总结

头像
TLIVE
编辑于 2019-07-23 19:53:33 APP内打开
赞 15 | 收藏 253 | 回复19 | 浏览17096
先介绍下个人情况,国内top5本硕科班,英特尔腾讯两段实习经历,几个项目和还没中的论文QVQ。
目前提前批和内推已经基本结束,有意向的offer也有了几个,现整理下C++后台的面经(包括春季实习招聘)合集回馈各位牛友。
有些问题可能时间久远记得不太清楚了,主要给大家看下面试官都问了哪些问题的类型吧,话不多说黑喂狗!

1.阿里-蚂蚁金服

一面:
扣简历项目细节
linux下一个write()函数的具体过程
介绍下page ***和buffer *** ,它们有什么区别
fysnc调用哪个内核模块,你熟悉哪个内核模块
free 指令怎么用
select、epoll,以及边缘触发、水平触发
TCP三次握手、四次挥手,time wait解释一下
线程和进程的区别
浏览器输入一个网址,得到页面的具体过程。
JAVA会吗(不会你别问)
数据库用过哪些(没用过你别问),数据库的索引介绍一下(。。。)
链表翻转,如果只用指针的话怎么翻转
找100亿个数中最小的1000个数

二面:
扣简历项目细节
JAVA会吗(真的不会)
那问点C++吧:多态如何实现、auto如何实现、编译器对extern修饰的变量会如何处理、一个空对象的大小是多少、函数重载时编译器是如何工作的、内存对齐的原则
分布式系统中CAP原则,给出具体的场景
用过哪些分布式的系统,解决了什么问题
B+树和红黑树的特点,为什么红黑树能保持较好的平衡性
介绍下哈希表的原理。
如果一个进程有异常如何监控(答了用htop查看cup和内存的适应状况)
两个文件各有100亿个URL,如何找到两个文件中相同的URL

三面:
扣简历项目细节
我们这边JAVA用的多(我会好好学的!)
说下为什么会出现死锁,如何避免
介绍下读写锁,读写锁适用于什么场景
udp和tcp的区别,如何用udp实现tcp
五种I/O模型介绍一下

四面:
扣简历项目细节
你简历上说参加过数模,介绍下当时的情况
你论文里面解决的问题用了哪些算法
马尔科夫链介绍一下
你平常会学习什么算法(老哥别问了,我知道你肯定是做算法的了。。)

2.腾讯-IEG游戏部门

一面:
扣简历项目细节
自己做过游戏吗?难点在哪里?
论文里面的问题来源,如何解决
判断两个链表相交,并找出交点
linux的dd指令操作介绍一下
进程通信的几种方式

二面:
扣简历项目细节、写了多少代码,是几个人做的
C++ List STL底层数据结构
Make file原理,流程,如何写?
gdb原理,为什么能让程序停下来?coredump调过吗?
手写个双向链表,带插入删除等功能
bitmap用过吗,介绍一下可以使用在什么场景

实习答辩面:
介绍实习做的东西
进程通信-共享内存怎么用
实现无锁循环队列的基础是什么
DDR4 2400MHZ的内存读写带宽多大?说说你方案性能比内存读写带宽差这么多的原因(被无情diss)
unreal engine如何是进行内存管理的,介绍一下它处理一张贴图的流程?
我看你用的是苹果手机,你用过它的延时摄影(现在叫慢动作)的功能吗,它为什么在几年前就可以处理4k 60fps画面产生的巨大数据流(我没用过谢谢)

3.百度-AI芯片算法

一面:
扣简历项目细节
FPGA和ASIC的区别
LRU实现,以及几种优化
TLB是什么,有什么用
栈的逆序操作,不能使用额外的数据结构。
网站server与client间的通信安全,攻击者伪造身份怎么办,中间人攻击怎么防御
大数定律、贝叶斯公式
CFS调度器介绍下,如果离线处理海量日志文件,如何设计CPU调度策略以提升性能
排序,所有数字大小都在a到b之间,要求线性时间
八个球,七个一样,一个重,最少几次找出那个重的

二面:
扣简历项目细节
Linux的内存管理、slab机制介绍一下
DMA操作介绍一下
网卡的工作流程
设计一个网站,实现多人同时抢票功能,保证先点击的人先进入页面,人满了或者没票了需拒绝
如何实现多人抢红包的功能,保证高并发和数据的一致性
实现一个聊天工具,在底层如何设计存储的数据信息,以支持类似微信聊天一样,支持删除信息(信息自己看不到,别人看得到)、撤回信息(信息自己看不到,别人看不到)和转发信息
设计类似百度百科的功能,允许多个人同时阅读,保证只有一个人修改

三面:
(终于不用再介绍一次简历了)
缺页中断什么时候会发生
fork时的cow技术介绍一下
说下你知道的内核中所有用到内存zero copy的地方
写一个波浪子序列的题
shell脚本怎么写
linux中VFS是什么,和其他具体的文件系统如何配合工作的
介绍下epoll和iocp

4.华为-***软件

一面:
给面试官介绍我简历上做的东西。。
Nagle算法和tcp的拥塞控制
项目用过哪些数据库吗(没用过,别问)

二面:
过一下简历项目
如何理解软件的健壮性和高可靠性
了解哪些linux内核的模块


实习面:
简历项目(听完一个问题也没问。。)
虚函数和多态如何实现的
static函数能定义成虚函数吗
shared_pointer了解吗,weak_pointer有什么作用
std::move有什么用,介绍下左值和右值
Const的用法
常量指针和指针常量
STL vector和map的底层结构
链表排序,如何直接在链表上实现快排,如果元素类型任意呢?
整数的二分查找,如果元素类型任意
B+树如何保持树平衡的
LINUX找特定的文本段
LINUX如何杀掉特定名称的进程
一个二维图,如何优化一个大圆包含尽量多的小圆
深度优先+存子状态与动态规划的区别
socket编程介绍一下

6.拼多多-业务平台

一面:
扣简历项目细节
socket里面send和recv流程具体介绍一下
说一下你对系统***的理解
spark streaming介绍一下
Linux一次系统调用的过程
系统进程内存分配,虚拟地址,内核高位物理地址
自旋锁、MCS锁
软/硬连接下inode是如何工作的

二面:
过了一下简历项目
JAVA会吗?(不会,别问)
epoll介绍一下
离线的用户行为日志分析系统可以怎么做,随便说一下
如果线上运行的服务端崩溃了,如何排查原因并解决 (我说的是查log)
最关键的log可能在服务端时崩溃时丢失,并没有真正写入磁盘,重启后无法查看该如何解决(承接上一个问题,我说的是log肯定还在内存里,可以实现一个常驻内存的日志系统来保存log)
如果整个物理机器宕机了,内存里面的log也没了,如何解决(不知道。。实在没办法就只能强制每次产生日志就刷进磁盘。。)
用过哪些数据库吗(没用过,别问)那redis的一致性哈希怎么实现的(。。。)数据库的四种隔离级别(。。。)
设计模式里面装饰器介绍一下
如何统计一个数的二进制有多少个1,logN的方法能想到吗?
写个最长公共子序列的题


更多模拟面试

19条回帖

回帖
加载中...
话题 回帖

笔经面经近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐