李佳念:【牛客网】2017-IT校招全国统一模拟笔试

2020-11-15 07:15 admin

 扫码分享

  作者:

  链接:

  来源:牛客网

  话说在牛客网上混迹了半年,也没啥拿的出手的贡献。现在基本上自己的校招生涯要告一段落,就把自己的经验总结拿出来分享下吧。

  原文记录在个人的博客

  欢迎来访~

  讲到校招的知识储备,当然不同岗位是需求不不一样的,个人偏C++后台方向( 话说自己除了这个啥都不会 ),所以有相同方向的可以参考一下。

  一般而言,面试的方向无非就是语言基础,操作系统,网络,数据库,数据结构及算法。 额外还有逻辑推理智力题相关的等等。

  在语言基础上,看的书有:《C++Primer》,《C程序设计语言》,《C语言参考手册》(参考用),《深度探索C++对象模型》,《C++标准库》(参考用),《Effective

  C++》以及 《STL源码剖析》(参考用)。

  忽的发现这一总结,自己看过的书还不少。当然这些书并不是完完整整全部看完的,毕竟一本《C++标准库》1000多页给我半年也不一定看完。

  基本上是相互参考着看的,反正都是关于C/C++的,肯定不少重复的地方,可以相互对照着理解。

  网络方向的书主要就三本:《TCP/IP 协议族》,《TCP/IP 详解 卷一》 以及 本科时网络的教材《计算机网络》谢希仁版的。

  虽说一般国内的教材都是比较烂的,完全可以扔掉的。但这本谢希仁的网络总体来说还是不错的。 另外就是《TCP/IP

  详解》虽然经典,但里边好多协议显然是过时了,一开始看的时候积累了好多疑惑。 最后还是决定以《TCP/IP 协议族》这本为主来复习网络方向。

  操作系统则是《现代操作系统》以这本经典的教材为主了,当然也入手了圣经级的AUPE以及UNP,不过这套比较偏重编程,概念性的还是要靠《现代操作系统》。

  另外还有一本CASPP,把它放到操作系统下似乎有些不大合适,但这本书却是让人受益匪浅。不愧为价值比同等质量的金子更加值钱的书。

  数据结构以及算法则是一些大公司的一大杀器,像一些国际巨头更是以这个为主。

  然而这一块的准备并非一朝一夕之功,自己的水平只能处于临阵磨枪级别。 这里主要看了《算法第四版》,弥补了一些基础的数据结构以及经典的算法。

  另外也买了牛客上左神的《直通BAT面试算法精讲课》视频。令人激动是面试时却是遇到不少原题,物超所值。这里强行植入一波广告,课程专属优惠购课链接: 之后把左神的那本《程序员面试代码指南》也入手了。虽说校招已经结束了,但莫名的发现自己对刷题也有点兴趣,留着无聊的时候刷题用。

  自己也入手过网上一些其他大神出的刷题书籍,但终归是左神的这本更加良心一点。 最后再推荐一本左神最热衷的《程序员面试金典》(

  看清楚不是宝典那本 ),国外的一本神书,竟然在上边遇到好多面试的智力题,相见恨晚。

  至于数据库由于时间关系没怎么看了,而且个人感觉数据库光靠看书的话是远远不够的的,没有相关的优化经验以及项目经验基本上意味着

  数据库这块处于盲区。

  这里总结一下校招的面经,毕竟面过那么多家,参加过几十场面试,而且每场面试都详记在册。

  从春招实习到秋招内推一直到最后校招,几乎每场面试完都会把面试问题记录下来,当然不乏一些遗漏的问题以及遗漏的面试。 这里总体来梳理一下。

  作为一个计算机出身的,肯定梦想着国内的BAT这三大巨头。

  而对于综合考虑地点环境,以及薪资待遇,A厂的条件算是Top了。地点杭州,待遇又属上等。

  最可惜的是,A厂是Java出身,C++想进A厂的话难度恐怕较大了。

  首先是实习内推。但是还是在实验室跑实验,突然接到一个杭州支付宝的电话,意识到难道这就是传说中的点面?

  然后就在毫无准备的前提下进行了人生的第一场面试。 ( 一开始电话里说我们来简单聊聊,我还天真以为谈天说地呢,谁知道聊聊就是面试啊 )

  阿里实习生内推电面:

  自我介绍

  讲一个拿得出手的项目

  C/C++ 与Java的区别

  你说C/C++较Java有性能优势,为什么?

  从N个无序数中寻找Top-k个最小数( 经典海量数据 )?

  Hashmap 的底层实现

  Array与List的区别

  进程与线程的区别

  网络的七层协议

  TCP与UDP的区别

  TCP的三次握手与四次挥手

  进程间调度算法

  数据库索引的实现方式

  Inner Join, Left Join 以及Right Join的区别

  有什么问题

  由于当时处于裸面阶段,这些问题基本上没回答上多少,虽然现在看来很基础了。

  当时中途还跟面试官抱怨这些概念性的东西看了就知道,不看就不知道,没什么用。 现在才体会到自己当时还是图样图森破。

  基础都不好,怎么指望你成神? 不过好一点的是面试官人很Nice,并不会因为你啥都不会吐槽你鄙视你,而是一点点挖掘你的能力和潜力,

  基本上是去寻找你的闪光点,这样让我并没有感到太多的紧张。 虽然第一场面试以失败告终,但由于面试官的Nice,反而给自己积累了不少的信心。

  接下来阿里内推没过系统自动进入了实习生的校招流程,然后参加笔试,收到到南京现场面的通知。

  阿里实习生校招现场面:

  自我介绍

  关于科研项目

  关于文件服务器的项目

  项目中有没有用到数据库?对数据库了解多少?

  谈一谈数据库的3个范式

  有没有用到其他的开源数据库

  C++面向对象的三个特性

  面向对象设计的基本原则

  C++多态的实现方式

  虚函数表是一个类一个还是一个对象一个?如果继承,子类与父类的虚函数表有何区别?虚函数表中可不可以存放非虚函数?

  有没有用过typeid检查运行时类型?

  模板中非类型参数与类型参数有什么区别?

  STL中有那些容器?vector与deque有什么区别?

  什么是智能指针?写一个模板的智能指针

  Linux下/etc/下有那些配置文件,有什么作用?resolve.conf是用来做什么的。

  如果修改Linux下网卡配置在哪修改?有没有用过iptable?

  Linux有5个运行级别,你知道么?( Ps这里是面试官下的坑,实际有7个运行级别 )

  内核态与用户态的区别?从用户态切换到内核态有哪几种方式?

  数据结构有没有了解?

  图有几种存储方式?邻接矩阵与邻接表存储结构的优缺点?什么时候用什么结构?

  排序算法哪些是稳定排序?归并排序常用于哪里?

  手写斐波那契数列?

  为什么不用递归?递归有什么不好?那为什么不用inline来写递归呢?如何来避免递归?

  有什么问题

  阿里现场面的时候是在一个大厅,一个面试官一个小桌,每个人被叫到号后就去对应的面试官那里。

  当时发现Java面试的大概有二三十个,然而C++只有四五个面试官。

  而且面试官年纪比较大,很有经验,自己所谓的包装的各种高大上的项目被他一层一层剥开,一种被透视到内心深处的感觉。

  虽然这次面试比第一次要好一些,回答上来百分之六七十,但最后还是挂了。 阿里C++要求还是较大的。

  就这样,阿里的实习生内推跟校招都是一面挂掉。 本想经过一番准备,再去向阿里重新发起挑战。

  后来7、8月非秋招内推则连面试机会都没给。后来问了阿里的学长,据说是简历的评估跟春招的面试成绩挂钩的。

  当时心凉了半截。春招阿里两次挂在一面上,因此秋招也就没有任何机会了。 只能说与阿里无缘吧。

  腾讯的流程跟阿里类似,也是参加了春招的实习招聘以及秋招。

  话说实习生内推的时候明明收到腾讯的内推短信,却没收到完善简历的链接,所以内推的机会给错过了。

  之后参加实习生春招的笔试,然后腾讯来合肥现场面试。

  腾讯实习生招聘现场一面:

  自我介绍

  项目里到的主要语言

  项目中用到了Python,Python起的作用是什么

  是否理解hadoop等大数据平台

  项目的代码量在多少

  C++指针与引用的区别?经常使用指针还是引用?

  const在成员函数的位置,作用,如何保证成员变量的const?

  C++虚析构函数的作用,如果析构函数不是析构函数有什么后果?

  C++虚基类是什么?纯虚函数可不可以有实现?什么情况下会对纯虚函数进行实现?

  C++中如何实现接口,接口与多继承的优劣

  如何帮一个不懂电脑的女生找出电脑的问题(只能通过电话联系)

  项目中用到网络通信的地方

  TCP如何保证可靠传输

  TCP的流量控制

  IP分组传输以及重传等

  假设项目中TCP客户端申请一个文件的读事件,而服务端找不到该文件,却返回一个成功信号,这种情况有没有可能?

  项目里如何设计访问量过大,如何提升?

  微信中附近的人的功能,其位置信息该如何存储?

  操作系统页面管理是怎样的?页面大小一般多少?过大或过小会怎样?

  进程请求资源死锁,如何在编程上防止死锁?

  手写singleton。如何避免多线程同步问题?

  实现一个singleton的基类,令其派生类都是singleton?( 利用template )

  STL中容器的迭代器在什么情况下会失效?

  腾讯这次现场面是自己的第一次现场面试,要比阿里的现场面还要早。 面试官看起来比较宅的那种,所以也比较严肃。

  整场面试回答上来百分之七八十,当时面试官都没说你有什么问题要问,感觉自己要跪。 但当天晚上通过微信查状态发现已编程复试中,有些意外。

  不过二面时面试官没有到合肥,所以二面是电面的。

  腾讯实习生招聘电面二面:

  自我介绍

  C++虚函数的实现机制

  如果基类的析构函数是非虚函数,会有什么后果

  gdb调试core文件的参数是什么

  有没有网络通信相关的项目

  hash表中为了防止冲突过多常用素数,为什么?

  stl中allocator adapter

  vector中内存扩充方式怎样?为什么每次都有2被扩充?( 算法导论中平摊分析 )

  vector与list的区别

  static的作用

  两个文件,一个是class A,一个是class B,如果A跟B相互引用,如何include?

  有什么问题

  据说二面的面试官是以后工作的boss,那二面面试官应该是SNG的腾讯云部门的,人也很好,面试感觉回答上来百分之九十左右。

  果然,晚上面试状态就变了HR面了。

  HR面还是现场面。但腾讯的HR面不涉及任何技术,就没有记录。只是从 HR那里得知了自己的部门是腾讯云。

  本以为HR面都面过了,基本上没什么问题了吧。但后来却收到了要加面的消息,好吧,加面就加面吧。

  腾讯实习生招聘电面四面:

  自我介绍

  网络字节序与主机字节序的区别?为何要有这样的区别?

  内存对齐,为什么要内存对齐

  1G的内存可以装入2G的程序么?怎么装?

  常见的页面置换算法?

  用浏览器打开网页发生的全部事件?第二次打开这个网页呢?

  循环与递归的区别

  二叉树给出前序,中序求后序

  墙上有一个插孔,提供无线的4孔插板,有28盏灯,至少需要多少插孔?280灯呢?

  一个处理机时间分辨率是1s,单执行流,每秒系统运行一次run函数,现要求设计一个提供定时任务的函数addfunc( Xs,

  func),可以设置在X时间运行函数func。提供系统API是gettime()来获取当前时间。

  这次面试不是太好,后来就没有然后了。 虽说自己实习即便是过了也不能去,但毕竟拒offer跟被offer拒的感觉还是不一样的。

  而且这次是实习阶段离offer最近的一次。所谓看到希望的失望最是让人绝望。

  通过春招发现自己的不足吧。也体验了一遍大厂的面试流程。 总体来说还是自己能力欠缺,尤其是项目经验方向。

  于是自己又花时间改了改补了补项目。 也花时间调整了下简历。

  之后腾讯秋招内推,却发现成了TST专场了。虽然找人内推了,却一直没有消息。 之后又是继续通过笔试来参加校招了。

  腾讯秋招现场一面:

  用5分钟来介绍一个项目,你在项目中的职责以及获得的成绩

  做题,面试官给了个小本,上边好多题目。int i; (!!i);是什么含义。

  做题。关于unsigned int 与int相加截断问题

  做题。int a=(((int * )0)+4);

  做题。关于printf的缓冲区问题

  C中引用跟指针的区别

  Linux下如何检测内存泄露?如何检测程序crash?

  gdb调试设断点?如何查看系统堆栈?

  如何实现多态?

  进程通信的方式有哪几种?那种的效率会更好?为什么?

  Linux下swap区作用?

  给4个瓶子11种粉末,只有一种溶解呈现蓝色,溶解需要两分钟。问多久能测出蓝色粉末?

  写代码不用第三个变量交换两个变量值

  字符串匹配,O(n+m)

  给一个单链表如何判断有环?

  8个抽屉有一份文件,其中8个抽屉都没文件的概率是20%,现打开一个抽屉发现没有文件,求剩下7个抽屉会有文件的概率。

  一面面试官人很好,面试完后直接就说面试通过了。之间还兴致勃勃的聊了个人爱好什么的,因为是早上第一个面试的么,毕竟心情还是比较不错的。

  因为腾讯秋招的进度跟百度差不多,所以一直担心的一件事发生了,腾讯的二面跟百度三面冲突了。一个是早上八点,一个是早上九点。

  显然腾讯的面完肯定赶不到百度那去。 于是面试当天7点就赶到腾讯面试现场,想跟HR申请调整下面试时间。

  不过HR没遇到,倒是碰到一个面试官。跟他讲明情况后( 当然是以其他理由说明的,但看他的眼神感觉一直不相信我

  ),面试官说他来给我面,就面半小时,给我留出时间。

  腾讯秋招现场二面:

  做题。内存对齐,为什么要内存对其?

  1G物理内存,malloc申请2G空间,可以么?为什么?

  浏览器打开一个网页,说明一下这其中发生了什么事?

  TCP与UDP区别?

  HTTP 为什么要用TCP而不用UDP?

  HTTP 报头以及状态码。

  如果客户端keep-alive,服务端不支持keep-alive,连接是从客户端断开还是从服务端断开?为什么?

  一个处理机时间分辨率是1s,单执行流,每秒系统运行一次run函数,现要求设计一个提供定时任务的函数addfunc( Xs,

  func),可以设置在X时间运行函数func。提供系统API是gettime()来获取当前时间。

  fun(){ int a; a=6; } 与fun(){ int a=5; a=6;

  }二者在二进制代码上有什么区别?若变量是static的呢?

  一个函数rand可以等概论生成无符号整数,假定M的值是这样定义的,若rand产生的序列中只有一个r0=r1,则M=2;若有r0=r1=r2,则M=3;以此类推,求M的期望。

  整体面试自我感觉还行,基本没什么卡壳的,但最后还是挂在的二面上,只能跟腾讯说拜拜了。 鱼与熊掌不可兼得吧。

  百度是实习的时候并没有投简历,而是在内推的时候投过一些简历。 内推时总共经历过两个部门的4次面试。

  首先Web Data的知识图谱。

  百度知识图谱内推电面一面:

  自我介绍

  考虑一个Int64的整型。若计算一个数的各位数上的平方和,通过不断迭代最终得到1,则称这个数为有趣的数。现给定一个数,判断该数是否为有趣的数?若判断一个数组的数呢?

  TCP与UDP的区别

  项目中文件服务器如何支持断点续传?

  用什么数据结构保存cookie

  hashmap支持并发,如何上锁来保证锁粒度最小。

  堆与栈的区别

  析构函数为虚函数的作用。

  普通类的析构函数对异常有什么要求?

  有什么问题?

  百度知识图谱内推电面二面:

  自我介绍

  项目中如何用Python来处理数据?

  有一个文件,有不同的属性列,如何将ID相同的Item整合到一起?

  Python如果考虑多处理机。

  简单介绍文件服务器的项目

  TCP 流量控制

  如何在main函数调用前处理一些事情

  main函数前会有什么操作

  考虑如何设计一个高并发量高吞吐量的服务器?如果是分布式的怎么设计?

  扑克牌均分3堆,求大小王在同一堆的概率。

  介绍自己科研项目

  服务器中端口复用

  程序中出bug,从哪些方面考虑找bug

  百度知识图谱内推电面三面:

  前两面感觉如何?

  项目如何用PY处理数据,是怎么处理的?

  项目中规模如何?有没有多人合作的项目?

  多人合作项目中个人职责是什么?工作量有多少?

  有没有一些学一些新技术应用到实践中?

  Traceroute如果路由动态改变了,会出现问题,如何克服该问题?

  有没有算法角度的新技能?

  有没有失败的项目?为什么会失败?考虑下失败的原因。

  如果重新做失败的项目,会从哪方面考虑

  项目中遇到哪些困难?如何解决?

  你有什么问题?

  总体来讲,百度的面试难度是较高的,毕竟是三面技术面。第三面经理面偏技术与HR面结合的感觉。三面的时候感觉压力很大。

  之后发现挂在了三面上。问了下面试官,说自己达到校招的水平,但提前批还是差点火候。 看来提前批应该是sp的概率会大些吧。

  接下来接到百度运维部门的电面:

  百度运维电面一面:

  聊项目

  C/C++static作用;static函数与非static函数区别

  宏定义与const的区别?宏定义可以完全用const替换么?宏定义如何调试?

  对设计模式有多少了解?

  一个有n行的文件,随机选m行?如何选?

  Linux查看文件的磁盘空间,监控进程cpu,内存使用率

  ping的底层协议?ICMP处于7层的哪一层?

  socket位于哪一层?socket编程的过程?

  内核分几个部分?

  OS同步与互斥的区别?

  数据库中事物的原则

  你所知道的最快的排序算法?

  若在数据库底层进行排序,该如何设计排序算法?

  这场面试是面试最久的一次,历时将近100分钟,只因为卡在了概率题上,面试官给了好几次机会,说这题你说上来就给你过,然而最终还是没答上来。

  事后发现的确是很简单的一道题。只能惋惜了。

  接着参加百度的笔试,之后是合肥本地的现场面试。

  百度秋招现场一面:

  手写vector删除元素,需要注意迭代器失效情况。

  手写两个类,要体现构造,析构,拷贝构造,赋值,虚函数,重载函数等特点。

  析构函数为什么为虚函数?

  new跟malloc的区别?

  free是如何识别free区域的

  Linux的找到目录中cpp文件?如何找文件中一变量?

  Linux检测内存泄露?

  了解哪些开源项目?redis,mysql有多少了解?

  n级台阶问题

  手写代码,有序数组查找某个元素出现的次数

  一致性哈希

  百度秋招现场二面:

  自我介绍

  如何判断一个图是否有环

  讲一个你觉得很完美的代码或开源项目

  traceroute有什么优势?

  介绍一个比较完整的项目,画出流程图

  STL中vector内存分配?如何从原内存拷贝的新内存?会调用构造函数么?

  软件工程?

  如何看待C++面向对象?与c有何区别?

  面向对象设计原则?里氏替换是指什么?

  多态是如何实现的?画一下虚指针与虚函数表,如果多继承,虚函数表怎么画?虚指针是对象成员变量么?在什么时候初始化?

  讲一下TCP中拥塞控制

  你还有什么问题

  二面面试官人很Nice,过去的时候还给我倒了一杯水,很客气,也很友善,看起来年级也不大。

  百度秋招现场三面:

  自我介绍

  析构函数为什么要虚函数?

  C++中强制类型转换?Dynamic_cast的作用

  多态是如何实现的?

  C++中构造函数发生异常会怎样?

  C++中构造函数中this指针暴露了会有什么后果?

  针对简历详细询问每个项目的细节

  介绍自己的部门( 企业安全方向 )

  你还有什么问题

  三面也是技术面,而且面试官就是之后的boss,做的是企业安全方向,虽不是百度的核心部门大搜,但这一方向还是很有前景的。

  当时面完就感觉基本差不多了。 后来在十一前收到了面试通过的信息,整个秋招算是比较圆满了吧。

  华为则是参加2016的软件精英挑战赛获了赛区二等奖,之后参加的合肥地区的软件精英挑战赛专场的面试,当天面完就跟我说通过了。

  但正式offer也是十一前才下来的,算下来,华为这offer基本是面的最早,下来的最晚了。

  深信服的星云计划据说待遇也很高。

  聊项目

  对于N个点的网络,求任意两点的最短路径的复杂的

  C语言局部变量与全局变量

  对于大的数组,如何使用局部变量?

  不同文件中如何引用外部变量?

  递归时栈溢出怎么办?任何递归都可以用非递归实现么?

  存储通讯录信息:姓名,手机,邮箱,简介,如何能实现快速查询以及部分查询?

  Linux编程中的锁有哪些?

  自旋锁与互斥锁区别

  进程IPC方式

  socket与共享内存用于什么情况?

  卫星网络中网络带宽足够,但丢包率高,导致网页打不开,通信质量差,什么原因?如何解决?

  Dijkstra单源最短路径

  深信服这场也跪在了算法上,面试官说只要你回答上这个问题就给你过,但还是没想起来Dijkstra的具体内容。 无奈。

  自我介绍

  C++多态实现

  虚函数表的位置

  C++中new跟malloc的区别

  堆与栈的区别

  Python三种内置数据类型

  shell后台运行

  STL中容器

  vector的内存释放

  shell中调用脚本是通过线程还是进程

  CVTE面试还是比较简单的,然而还是挂了,主要是因为项目经验缺乏的问题。

  面试官对科研项目不感兴趣,自己包装的服务器又是烂大街,最后评价说基础很好但项目经验不足。

  自我介绍

  项目

  C++中虚函数的作用

  那些函数不能是虚函数

  析构函数可不可以为虚函数,为什么

  const 引用,为什么用const引用

  指针与引用的区别

  static 的用法,每种用法的作用域以及生存周期

  模板类声明跟定义放在两个不同文件中可以么?为什么?

  快排的思路

  查找的复杂度

  STL中list跟map的不同应用场景

  红黑树查找、删除、增加的复杂度,为什么?

  介绍一个项目,遇到的困难,如何解决?

  评价:基础很好,项目经验不足。然后果不其然又给挂了。

  多益总共一轮笔试,一轮视频面试。

  自我介绍

  介绍项目

  如果有比主管更好的Idea,你会怎么办?

  怎么看待加班

  vector如何扩容

  怎么理解线程安全

  如果有一个很难重现的bug,如何处理(可能运行好多次都难以重现)

  设计一个爬虫爬网页的话是DFS好还是BFS好,或者有没有更好的策略

  关于一些网盘中,服务商如何提高服务器存储利用率

  数字签名中伪造问题

  地图软件中实时路况的实现策略

  有什么想问的。

  因为地处合肥,所以讯飞对我们学校的学生还是比较认可的。 整个面试过程也比较随意,总共就经历了一面面试,包含了技术+HR的因素。

  但没有记录,所以面试内容也就不记得了。

  C++如何申请释放内存?与malloc/free的区别

  实现一个strlen,不用循环怎么做?

  C++面向对象的作用,特点

  若析构函数不声明为虚函数,会有什么后果?为什么?

  fork 一个新进程与建立一个线程的区别。

  gdb 调试查看栈的命令

  远景的提前批很早,八月就面试了,一直没消息,一开始以为是跪了。后来九月收到现场面试的通知,才知道八月的面试是过了。

  后来因为一些事而没参加后续面试,自己主动放弃了。

  自我介绍

  有没有用过Python的Adapter 适配器

  对Java有多少了解

  C++中多继承与Java单继承的优缺点。Java如何体现多继承

  线程与进程区别与联系?为什么进程切换代价比线程高

  有没有听过协程

  TCP的建立连接与释放过程?为什么最后需要2个MSL时间关闭

  数据库了解么?事物的四个原则?索引是如何事项的。

  知乎话题之间子话题跟父话题之间的数据结构存储你是怎样?如何判断新加入的节点是否有环?

  HashMap怎么实现?如何解决冲突?hashmap是如何扩容的?

  怎么理解面向对象?有什么优点?

  用过拿些web框架?

  了解哪些攻击手段?

  知乎总体来说岗位偏Python跟Java,面试官也是这方向的,于是最后扑街了。

  滴滴投简历时投了个系统工程师,一开始不知道是做什么方向。 后来面试的时候才发现完全不是研发。

  面试偏运维方向,问好多分布式,虚拟化,Docker等问题,真个是大眼瞪小眼了。

  面试这么多,从来没有这么尴尬的时刻,什么都不会,后来还是我打破的尴尬的局面,跟面试官说抱歉投错岗位了。

  后来收到滴滴现场面试的通知,不知道什么鬼,难道是给调岗位了?然而自己却忘记去了。。。

  涂鸦移动笔试是发给你两道编程题,一天内写完后再发给HR就OK,都比较基础。

  涂鸦一面现场面:

  自我介绍

  多态

  手写螺旋矩阵打印

  象棋中马走日从A点到B点的最短路径走法

  涂鸦二面电面:

  自我介绍

  做过什么开源项目

  git

  长为N的数组,元素范围是0-N-1,其中只有一个数是重复的,找出这个重复元素

  矩阵从左上角向右下角走,每次只能向右或者向下移动,求经过最大的路径

  数n可以由完全平方数构成,求最小的完全平方数构成数。

  对算法有多少了解?算法导论看多没?

  堆排序

  两个栈实现一个队列

  之后,几个星期后HR加QQ说技术面通过了,然后问你有多少offer,待遇多少,实话实说了之后,就没然后了。

  周围有同学收到的涂鸦的Offer,但待遇很低,所以猜测是被HR给挂了。

  -------------------------------------(分割线)

  (更新一下,涂鸦移动刚收到offer,不过待遇较低)

  网宿科技也是内推时投的简历,但面试的时间较晚,在九月中旬左右。先是一面HR面。之后是一面技术面。

  网宿科技技术面电面:

  Linux环境变量的配置

  Linux定时任务

  设计一个QQ群,如何存储群里的发送消息?

  两个很大的文件,去匹配相同的数据行

  Linux的重定向

  如果有很多很大的对象,如何用容器存储?

  gdb 如何调试

  STL中vector, list, map的区别

  有什么问题。

  网宿面完后一直没消息,开始以为是跪了,前两天收到消息说要成绩单照片,所以现在也不清楚具体是怎样。

  招银的笔试比较简单,编程题是完形填空。

  招银电面一面:

  介绍一个项目

  项目遇到什么困难

  C++用过什么容器

  STL中如何计算迭代器距离

  C中static的用法

  TCP,UDP的区别

  你有什么优缺点

  面试大概二十分钟左右,面试官人很好,一开始我在外边,给我调整了两次时间。最后官评价说挺满意的,说两周左右有反馈。

  后来收到完善简历的消息,貌似是十月下旬会有现场面试。

  差点把金蝶忘记了。金蝶是一轮笔试加一轮视频面试。

  值得吐槽的是,金蝶的面试总共不到10分钟,除了一个问题“你对运维有多少了解”之后,一半的时间是面试官在讲金蝶很牛逼,一半的时间是我在问问题。

  后来就没有后来了。 着实让人无语。

  总结下,BAT这种大厂的面试还是很享受的,整个面试过程面试官是在不断挖掘你的闪光点,即使一开始你并不知道问题的最优解,但他也会一步步引导你,拓展你的思路。

  而且大厂并不要求你有多丰富的项目经验,而是看你能挖掘出多大潜力,因为这些大厂还是很愿意培养人才的。而对于其他的一些小公司,看中的可能更是项目经验和

  实习经历了。毕竟这些公司资金有限,他们所需要的人希望一出来就能接手项目来产生价值的,而且这些公司员工流动较大,花大价钱培养出人了没两天就跳走了,不如

  直接就招聘项目经验丰富的能直接上手的人才。

  另归纳下常考的知识点:

  C/C++方向:

  指针与引用的区别

  const 关键字与static关键字

  malloc 与 new区别

  堆与栈区别

  多态,虚指针,虚函数表。

  析构函数为什么是虚函数。

  STL中容器

  网络方向:

  TCP UDP区别

  TCP三次握手四次挥手

  TCP流量控制拥塞控制

  操作系统方向:

  进程调度算法

  进程线程区别

  进程IPC方式

  进程同步与互斥

  页面调度算法

  数据结构与算法方向:

  排序算法

  查找算法

  字符串,矩阵算法

  哈希表

  堆结构

  海量数据处理

  这块可以参考牛客网左神视频

  最后再强行植入一波广告,课程专属优惠购课链接:

  反正我是觉得很值,而且通过优惠码也赚了不少~~

  最后祝愿大家都能找到心仪的Offer

  【转自】

返回顶部