专栏名称: 牛客网
程序员必备求职神器,刷真题,练算法,看面经,得内推。点击查看: http://www.nowcoder.com/
目录
相关文章推荐
田俊国讲坛  ·  我问DeepSeek:为什么这么多人来到田俊 ... ·  21 小时前  
田俊国讲坛  ·  AI时代,人类教师如何守住“不可替代性”? ·  昨天  
贵州高院  ·  学有所获 听听学员代表怎么说(二) ·  2 天前  
贵州高院  ·  学有所获 听听学员代表怎么说(二) ·  2 天前  
51好读  ›  专栏  ›  牛客网

趋势科技、美团、小米、网易互娱 C++后台开发offer面经

牛客网  · 简书  ·  · 2018-03-31 16:03

正文

前言

经过六月到九月这几个月的努力,九风有幸拿到了趋势科技、小米、美团、网易互娱的offer,之前看了好多分享的面经,是时候该回馈了一波。

先介绍下九风的基本情况:在导师的创业公司待过一年多(没有课就去公司),做过C++图像处理、java后台开发、移动web开发,由于自己比较水,学的东西都不深,在7月初离开公司后就猛补基础知识点。

艰辛经历

九风在校招七月初就开始投简历,没有统计过投过多少家,基本把牛客网上的可以投的公司全部投了一遍,投了简历的至少有60家公司;笔试也不知道做了多少了,至少有25家的笔试,最后收到的面试情况:

招银网络科技:电话一面挂;

金山WPS:电话一面过,电话二面挂;

CVTE:现场技术一面挂;

美团点评:现场技术一、二三面、hr面拿到offer;

网易互娱:现场技术一面、二面拿到offer;

趋势科技:现场技术一面、二面拿到offer;

小米:现场霸面技术一面、二面拿到offer;

腾讯:现场一面挂;

深信服:和腾讯面试冲突放弃;

其他公司:百度、头条、京东等这些公司挂在笔试上了,360、搜狐、搜狗、美丽联合等直接挂在简历上了;

对现在的offer情况比较满意,准备结束秋招;先感谢给我offer的面试官,找工作真的是很看运气的,碰到好的面试官会一步一步引导你,碰到风格不搭的面试官那就有点难受了;然后感谢一起找工作的小伙伴们,一起学习一起进步,多交流面试经验,少走了很多坑;也谢谢很多牛友分享的面经;

准备校招的还是蛮辛苦的,九风7月份开始基本都是7:30起来刷编程题刷到8:30吃早点去实验室准备其他知识点,中午午休前半小时刷编程题,晚上回去洗澡后刷编程题到12:30左右睡觉,没办法,基础不行只能靠努力来补;由于智商还是不够用,最后也只把牛客上的leetCode题刷完了而已,看了几遍剑指offer,这两个都是神一般的存在,算法题就靠这两个。

九风想对小伙伴们说:

心态很重要:九风的offer可以说都在9.22号这天拿的,在这天之前,我也是一个offer也没有,也比较难受,看着一起的小伙伴面试、拿offer,我在9.22之前就在9.18号现场面了CVTE一家(招银科技、WPS是电话面的),还一面挂了,当时也是很难受,但是还是要继续学习,毕竟,机会是给有准备的人,如果offer还没来,那么要么就是适合你的offer还在后面,要么就是还需要继续学习。摆正心态,厚积薄发!

多交流:九风的实验在8月底就组织了一系列活动,基本每天晚上有个小伙伴来分享,而分享的内容没有限制,面试经验、操作系统、hr面如何回答、网络知识、排序算法、实习经历、大数问题解决方法、如何讲项目等等,只要和面试有点相关的都可以,大家一起讨论,互补知识点,听者从面试角度来提问,讲者回答,讨论知识点会从哪些角度来问等等;

补上盲点:这一点起始是对修改简历的建议,九风初始版本的简历的技能就是写自己会哪些就写哪些,发现基本都在挂在简历上;之后看到上一届师兄们的简历,就专业技能方面就比我多好多项,至少看上去高大上一些;然后九风就去腾讯招聘C++开发工程师的要求直接粘贴到简历上,适当修改后感觉简历瞬间高大上了--------好多知识点都不懂,然后根据简历上写的狂补。只要你补上了之后那就不虚了,因为实在不懂的你可以写个了解,如果有时间的话就深入学习。

面经

金山WPS 时间九月初,具体时间忘了,

电话一面: 过了

如何检测内存泄漏

讲讲智能指针

C++容器有哪些

list 和 vector有什么区别

讲讲大端小端,如何检测

public 和 private 关键字,在继承中有什么区别

设计一个内存分配类---参考STL中空间配置器

现有一个程序需要申请的地址是要求起始地址必须是16的倍数,如何设计----将申请大小上调至16的倍数,那么最多会浪费15byte空间,真正存储从16byte倍数上开始利用。

电话二面: 9.12号, 挂了。 不过这个要吐槽下,约的2.30, 等到下午5点才打电话过来,等得心累;

TCP三次握手

http状态码,403是什么

http 与 https的区别

智能指针,shared_ptr 内部实现

IPC通信有哪些

多线程的死锁,死锁避免(讲了银行家算法额思想)

Vistual Studio 怎么调试,如何设置条件断点

JVM 内存回收

招银科技 9.15号

电话一面: 挂了

tcp、udp的区别

spring 依赖注入

面向对象的特征,讲讲多态,什么是多态?

进程与线程的区别

什么是信号量,信号量与信号的区别

依赖注入

怎么创建索引

知道哪些设计模式,工厂方法与抽象方法的区别

怎么统计char二进制中1的个数

sizeof 与 strlen的区别

CVTE 9.18号

现场一面: 挂了

挑一个最拿手的项目讲

面向对象的基本特征:封装、继承、多态;

析构函数能不能用virtual

引用与指针的区别

引用必须初始化,先在要设计在一个类中如何初始化引用:

class A{

int &a;

}

如何给a初始化?

static、const、virtual结合使用情况,以下几种可以么:

static void fun(){};

static void fun() const {};

static virtual void fun() const {};

static virtual void fun() {};

以上四种函数可以这样定义嚒? 为什么?

美团 9.20号

现场一面: 过了

进程与线程的区别

数据库索引为什么用B+树而不用B-树

spring mvc 的处理流程

访问一个网页的具体过程

手写单例模式

手写数组合并

java线程安全了解么

hashmap、hasptable、concurrenthashmap的区别,concurrenthashmap如何实现高并发?

知道哪些NoSQL,讲下redis,redis的实现原理,redis怎么实现高并发?

C++如何处理异常,异常向上抛出抛到最上层是什么情况?

get、post的区别,什么是幂等性,put和post的区别。

现场二面: 过了

tcp三次握手,第三次握手的时候如果直接发送数据会怎样。

一个http请求的具体过程以及具体的协议,越详细越好,dns的查询过程

设计一个订单,同时有多个骑手抢订单该如何设计,有多个服务器处理请求要怎么处理?

select、epoll的区别,什么时候用select,什么时候用epoll

讲项目

网易互娱 9.21号面试,22号晚上出结果; 到了现场先写一个算法,不难。

现场一面:

讲下快排

手写插入排序

进程与线程的区别,如何创建多线程、如何创建多进程。

IPC通信,会问你自己实际使用过不

socket编程过程

vector实现原理

如何实现vector 在扩容的时候不进行新的空间申请,即不想有扩容操作,该如何设计? --- 从operator new和placement new方面来讲。

如何将一个序列均等分为两部分,使得这两部分之和尽量小-----没做出来,比较尴尬。

现场二面: 过了

全程讲项目

最后出了个题:在王者荣耀中(干嘛不说阴阳师中呢)如何统计全服中所有玩家阿轲这个英雄的胜场排名?

呀呀,到了神奇的9.22这天了

神奇的9.22号

9:00 美团三面:

全程问项目

9:50 美团hr面:

把一个项目用通俗易懂的语言讲懂给她听

如何处理同事关系

一个人不会在公司待一辈子,你会出去创业嚒?---坚决咬定不会,美团特别好,留在公司做贡献

为什么来美团?美团的价值观是啥

你选择offer的最重要的两个因素

24号发消息说进入录用池了,28号打电话询问手里offer情况,然后定薪资, 30号打电话说薪资情况,要决定是否接offer,我说考虑一天,31号打电话回去把offer拒了,机会留给小伙伴们,小伙伴们加油。

10:50才发现趋势科技也是上午面试(以为下午面试),赶紧跑过去面试现场。

12:00 趋势科技 (忘记记录,凭记忆写咯)

现场一面:

根据简历上写的项目、技能来问你是熟悉还是了解,你只是自己用过而已嚒?你不是自己从底层设计的哦,那就不用说了!!!!

讲下项目,给我项目中的问题看我怎么解决。

这个一面的面试体验比较不爽,不问里面的具体技术,只问是不是只是用过,也不让讲深入一些的知识点,感觉你要是自己设计出来一个类似的东西或者深入研究过源码才行或者修改源码才行一样,给我的感觉不爽,不过还是感谢让我过了。

12:50 现场二面

讲项目

写一个字符串拷贝函数,你这个会出现异常嚒?怎么改进?

简单英语口语交流

13:30 hr签offer

当时就问了要不要违约金,然后就签了,当时到手的第一个offer,其他都还没信,心里老高兴了,准备好久,终于有个offer,差点就蹦起来了!

2:30 吃完饭后看到小伙伴有去小米霸面的,我也凑个热闹就去了...,第一次去霸面百度,百度没鸟我,觉得霸面应该没机会,不过小米还是支持霸面的,面试体验不错,赞一个(小米面试的酒店要刷卡才能进某一楼层,我上它们面试的上一层楼上,想从消防电梯走,结果进了消防电梯到了面试楼层发现要刷卡才能出消防楼层....,然后尴尬的打电话给小米hr姐姐来解救我们。。。。 当时好尴尬)。

6:30 小米,到了先从三道题中选一道题做,

现场一面:

先写个堆排热热身吧!!! 有点忘了,然后自己画图,根据自己的图来写过程,面试官看了两次都说不急,你慢慢写,我哪敢慢慢写,赶紧写完就给面试官了,有些错误,不过总体思路是对的。

统计逆序对个数,我记得剑指offer上利用归并的思想将原序列分成前后两个序列,分别统计两个序列中的逆序对个数,再统计两个序列中的逆序对个数,然后再合并继续的思路;我把思想说了之后面试官就让我手写代码,写好之后他看下了应该是对的。

还手撸了一个算法,不太记得,不过没上面两个难,面的不好,全程手撸代码,不过让我过了,真是开心。

中间在等二面的时候跟hr姐姐聊天,漫长的等待中。。。

现场二面:

二面面试官看了下我写的堆排,然后让我讲了下STL中的空间配置器,问了为什么自由链表中的是8byte的倍数?

问了那个刚开始那道题: 如何在一个队列中记录当前队列的最大值,这个跟那个栈的最小值有点相识,不过这个难一些,我用那个栈的思想说下我的解决思路,然后面试说你确定嚒?我说我看下,然后自己发现了问题,就把自己发现的问题跟面试官讲了下,然后讲了我那个解决方法的思想就是那个栈的最小值演变而来的;之后面试官提示我pop、push、getmax这三个方法都是O(n*lg(n))的时间复杂度,我说用堆嚒?他说堆插入的时间复杂度比较长,我思考了下说做不出来。

最后问了那个逆序对个数的时间复杂度,让我手推公式,我也没推出来,然后面试官在我面前手推了一把,然后就结束了。。。。。。。

二面面完后出去跟小米hr姐姐说我挂了,然后hr姐姐说我过了,呀呀,说了谢谢就去按电梯下去了,按电梯的时候接到网易互娱的通知说过了, 当时就蹦起来了。下了楼之后一看时间已经是晚上8:30了,辛苦了这么久终于有点小成果了。

腾讯 9.24

现场一面:挂了

自我介绍,然后面试官说来个自我介绍,说他就问点基础!!!

写个二分查找--这个倒是很基础

现在多个活动,有多个开始和结束时间,计算出其中某个时间有最多活动的个数, 当时脑袋发热,这个没想出来,我记得是做过的。

知道一致性hash嚒? 设计一个一致性hash。 我讲了点概念,说要用到虚拟节点,这样可以负载均衡(自己给自己挖坑)







请到「今天看啥」查看全文