中兴(hr挂)、美团(拿到offer)京东(拿到offer)
  中兴 
   技术面: 
   自我介绍问了接不接受调岗,回答只去北京 
   项目介绍 
   项目中有什么亮点 
   回答项目一般,但对cpp感兴趣,会看一些来源项目来学习 
   问有没有关注redis社区,没有,悲催 
   问对cpp感兴趣,以后项目中的任务可能有其他语言,如何应对 
   答自己适应力较强,学习很快,java,Android,is, cpp啥都会,足见学习适应力强 
   问cpp新特性,我去,面试官又撞枪口了,刚刚整理完,各种for,花括弧初始化,新的容器,正则,类型推导,等等的吧,面试官坐直了打了几个字,不知道是啥 
   又问了一些其他的,高内聚低耦合什么的,末了问能不能过,没有收到肯定的回答,回复理解,结束 
   整体略紧张,但并未影响本质发挥,面试官人还ok,非常客气,但面试官做java的,未问及cpp语言细节 
   ---------------------------------------------------------------------------------------- 
   hr面: 
   自我介绍 
   为啥选中兴,为啥不选更好的 
   我感觉中兴已经很好了,选择没有对错,只有合适不合适,也有同学去去找bat,我说你们去找吧,我更想找个国企,研究所之类,外企或私企可能压力非常大,人情味淡一些,中兴企业文化更像家 
   互联网行业竞争大,国企也一样,如何看待这个问题 
   作为应届生,学习东西最重要 
   女朋友问题 
   以后都来北京,长期发展 
   玩不玩微博 
   有账号,但不常用,问干啥,回答微信q,爱好跑步 
   兴趣爱好 
   跑步,劳逸结合的方式,学习进步的方式 
   谈到考研失败,半年工作,继续考研,跑步的坚持,对自己的改变,问看不到以前的我,强调变化,自己跑步在坚持,做项目在坚持,想变得更好 
   朋友多不多, 
   介绍从高中到研究生的变化,跟实验室比较熟,问实验室有多少人,答20个 
   你们的校训 
   实事求是,问含义,有一说一,有二说二 
   结束,问能不能过,没有回答,说打算去哪儿,我们江苏的公司也很好,强调只去北京,说北京在燕郊,能不能接受,犹豫一秒回答可以,面试官说燕郊物价低,我回了句有利就有弊,主动握手结束。 
   整体感觉还可以,有的地方有点儿言过,但语气还算坚决,大概二十多分钟,气氛还可以,两个面试官,还算和气。 
   ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 
    美团一面:  
     1、介绍项目,完了说了解Redis实现,面试官马上有了兴趣,问有没有读过源码,只是看过一些实现原理,源码略看过一些,介绍了一些Redis数据结构的实现,着重说了下dict的实现,如何reHash等等。  
     2、介绍完,然后问C++多态的实现机制,答虚函数表,然后把虚函数表如何实现多态详细介绍了一遍,面试官顺便问了64位系统里面,一个类里有一个int,一个虚函数,问sizeof占多大空间,这个问题考点是虚函数指针和内存对其,答上来面试官比较满意。  
     3、问了个简单的算法题,如何在10亿个数里面找到前100个最大的数,这个是用大顶堆来实现,很容易答上来,后来又聊了动不动linux等一些其他的,一共不到50分钟,面试官给了我肯定的反馈。  
     美团二面:  
     1、看过什么C++的书  
     2、问了一个算法题,有一个文件,每一行有两个数(int),一共1000万行,要求就是对有相同数字的行进行合并  
     3、算法题,1000亿个URL,找出重复次数最多的前100个URL  
     还问了项目等一些其他的东西,一共说了50多分钟,主要在讨论算法的实现,虽然没有给出最优的解,但我把结题的思路想法等都说了,思路还算清晰,反馈就是不能给出明确的答复过还是不过,他们要都面完排名才知道。  
     美团3面:  
     1、你做过什么项目  
     答:我先介绍一下我做过什么项目吧,做过一个web网站的项目,是一个文物数据存储的项目,还做过一些自己接的项目,比如前些日子和同学合做过一个web端的图像标记的小系统,这些项目是PHP或JS的等等,但我感兴趣的点还是C++方面,平时我也看一些开源项目的源码,比如Redis和STL等,通过阅读这些已经成熟的成功的项目进行学习。(中间面试官问了一些细节的东西,比如存储如何实现,平时怎么学习C++等等)  
     2、问你几个基础的问题吧,咱们再聊一聊,程序编辑完了以后到装入内存执行的过程是什么,你能介绍一下吗  
     答:首先是程序的编译,编译完了每个文件会形成一个.obj文件,然后将各个.obj文件链接成一个完整的程序,(被打断,问为什么要链接),懵逼了,这个真的是没看到,看这块知识的时候就一笔带过了,其实很简单,就是符号解析和重定向(自行百度),半天没  
     答上来,面试官还是死追着不放,说这是很基础的呀,但也只能不了了之了,心里想,完蛋了,美团真的就要挂在这里了吗,但我心态还是可以的  
     3、咱们再换个问题吧,你说一下程序装入内存后,内存模型是怎么样的?  
     答:听到这个问题我一阵激动,因为前不久刚刚深入思考了这个问题,回答说程序在内存中分为堆区、栈区、全局区、代码区、和字面值区,代码区存放二进制代码,字面值区存放字符串常量等,这两个区比较简单,就不多说了,然后全局区存放的是全局变量,堆区  
     是动态申请动态释放的,栈区是存放一些临时变量,(转折来了),我平时也在思考,为什么要分这么多区,没有全局区或者没有堆区行不行,(面试官来了兴趣,笑着问,那为什么呀),我继续说比如有一个函数A,调用了函数B,B又调用了C,C执行完返回B,B执行完又返回A,这是一个入栈出栈的顺序,在每次函数调用的时候,函数内的临时变量会压栈,执行完会出栈返回,但是把全局变量放到栈里,显然是不可以的,(面试官肯定我的说法接着问,那为啥要有堆的,没有堆行不行),我说堆是动态分配动态释放的,如果没有堆,把全局变量放堆里的话,可能不太合适吧(面试官一笑,给我解释了半天,然后说可以了,这个问题你算是答的不错的了)  
     4、我再问你个问题吧,TCP/IP协议分多少层,每一层是干什么的?  
     答:这个问题我很熟悉,物理层定义电器特征,。。。网络层将数据包进行路由。。。TCP/IP的流量控制。。。  
     5、(面试官还没等我完全说完就打断了我)可以了,我能看出你的技术积累还不错,总结来说,如果能在面试的过程中提出一些面试官感兴趣的点,就会有很大的加分项。  
     ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  
     京东  
      自我介绍,项目,顺便说了熟悉redis和stl   
       技术基础问的很多,一致性哈希实现负载均衡   
       Size of 一个空类,赋值语句和++的线程安全问题,网络数据包的转发过程,手写了三个算法插入排序,二叉树深度,链表逆置,算法思路题是筒排序,等等的吧,两面一起面,一共面了两个多小时,所有问题基本都能让面试官满意(自我感觉),一面略紧张,不过发挥还可以,与二面面试官相谈甚欢,最后说我觉得你还不错,思路很清晰,回答那就是过了是吗,面试官说还不一定,不方便透漏,我最后一个,面试官还非要送我,感觉京东人还都不错,很好说话。   
  查看23道真题和解析
查看23道真题和解析