前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++后台研发工程师2018年BAT华为网易等面经总结

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

作者头像
牛客网
发布2018-09-20 13:43:53
1K0
发布2018-09-20 13:43:53
举报
文章被收录于专栏:牛客网牛客网

如果我做不了大事,我至少能把小事做得大气一点。——马丁·路德·金

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

1.阿里-蚂蚁金服 

一面: 

扣简历项目细节 

linux下一个write()函数的具体过程 

介绍下page cache和buffer cache ,它们有什么区别 

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内核的模块 

5.网易互娱-游戏部门 

实习面: 

简历项目(听完一个问题也没问。。) 

虚函数和多态如何实现的 

static函数能定义成虚函数吗 

shared_pointer了解吗,weak_pointer有什么作用 

std::move有什么用,介绍下左值和右值 

Const的用法 

常量指针和指针常量 

STL vector和map的底层结构 

链表排序,如何直接在链表上实现快排,如果元素类型任意呢? 

整数的二分查找,如果元素类型任意 

B+树如何保持树平衡的 

LINUX找特定的文本段 

LINUX如何杀掉特定名称的进程 

一个二维图,如何优化一个大圆包含尽量多的小圆 

深度优先+存子状态与动态规划的区别 

socket编程介绍一下 

6.拼多多-业务平台 

一面: 

扣简历项目细节 

socket里面send和recv流程具体介绍一下 

说一下你对系统cache的理解 

spark streaming介绍一下 

Linux一次系统调用的过程 

系统进程内存分配,虚拟地址,内核高位物理地址 

自旋锁、MCS锁 

软/硬连接下inode是如何工作的 

二面: 

过了一下简历项目 

JAVA会吗?(不会,别问) 

epoll介绍一下 

离线的用户行为日志分析系统可以怎么做,随便说一下 

如果线上运行的服务端崩溃了,如何排查原因并解决 (我说的是查log) 

最关键的log可能在服务端时崩溃时丢失,并没有真正写入磁盘,重启后无法查看该如何解决(承接上一个问题,我说的是log肯定还在内存里,可以实现一个常驻内存的日志系统来保存log) 

如果整个物理机器宕机了,内存里面的log也没了,如何解决(不知道。。实在没办法就只能强制每次产生日志就刷进磁盘。。) 

用过哪些数据库吗(没用过,别问)那redis的一致性哈希怎么实现的(。。。)数据库的四种隔离级别(。。。) 

设计模式里面装饰器介绍一下 

如何统计一个数的二进制有多少个1,logN的方法能想到吗? 

写个最长公共子序列的题 

以上几家公司问过的问题基本上是这些,大家如果有什么问题觉得我没说清楚的可以留言或者私信我,如果后面还面了其他公司我还会回来补充的。 

最后,也请大家帮忙把关下几个意向的offer(都还没正式谈钱): 

1.蚂蚁金服 

2.腾讯游戏 

3.百度AI芯片 

4.华为中软院 

5.拼多多

作者:

作者:TLIVE

来源:牛客网(www.nowcoder.com)

- 互联网名企笔试真题

- 校招求职笔经&面经

- 程序员/产品/运营求职实习信息

- 程序员/产品/运营学习交流社区

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.09.13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档