牛客网面经题目摘抄

来源 阿里菜鸟java实习电话面试经,凉凉~!~

https://www.nowcoder.com/discuss/67251?type=2&order=0&pos=7&page=1

去除了java部分的题目

  • 用户请求在服务器是一个线程一个请求吗 这个问题搜了下有两种模型,一种是阻塞的一种是非阻塞的。现在一般使用基于IO多路复用的技术,Reactor模式,只需要一个线程或者少量线程,就可以处理大量请求。

  • 服务器抗压策略 这个问题就更大了。百度了一下有两点,一个是缓存,一个是分布式。网友回答了消息队列,可以减轻大量并发量突发的情况。

  • 很多很多个数,找到前十个 可以使用快排的变体

  • 堆排序时间复杂度如何计算? n×log n,就是n次,每次从低向顶出堆要log n次

  • HTTP和TCP 这个不知道问的具体是什么,可能是联系?

  • TCP关闭连接四次挥手,为啥 两次fin+ack,中间插入未发送完的数据。在带有延迟ack的

来源 网易内推(C++/C研发)offer之路

https://www.nowcoder.com/discuss/3038?type=2&order=0&pos=15&page=4

  • C++多态性都有哪些? 多态是一种接口多种实现。静态多态和动态多态。静态多态是通过泛型编程实现的,动态多态是通过虚函数实现的。
  • 动态绑定是怎么实现的? 静态绑定:编译时绑定,通过对象调用 动态绑定:运行时绑定,通过地址实现 动态绑定是通过虚表实现的。
  • 类型转换有哪些? C风格的转换,强制类型转换,隐式类型转换。C++四种类型转换:static_cast,const_cast,dynamic_cost,reinterpret_cost。分别用于内置静态类型转换(int float)、去掉类型的const属性,用于动态类型转换(必须为父子类),重新解释类型而不做实质转换(指针强转)。
  • 内存对齐的原则 结构体基本数据类型成员要从成员大小的整数倍开始对齐,结构体作为成员要从最宽的数据类型的整数倍对齐。结构体的大小为内部最大的成员的整数倍对齐。
  • 模板是如何实现的? 编译器在遇到模板声明时记住这个模板名称。在调用时根据模板传入的参数类型产生出具体的类型的代码,然后进行编译。
  • 指针和const的用法? const类型的指针,指向const类型的指针,指向const类型的const类型的指针。
  • 虚函数、纯虚函数、虚函数与析构函数?为什么析构函数要定义成虚函数? http://liaoxl.github.io/blog/20131205/virtual-destructor/ 根据这篇文章所述,意思是如果定义为虚函数并且子类也实现了的话,那么子类的析构函数和父类的析构函数都会调用。
  • 内联函数
  • const 和 typedef
  • 排序算法有哪些?快速排序怎么实现的?最好时间复杂度,平均时间复杂度。 插入、冒泡、堆排序、归并排序、桶排序、希尔排序、快速排序。
  • extern “C”有什么用 主要是为了调用C编写的程序。

2017暑期实习C++面经(阿里,网易游戏,腾讯等)

来源:https://www.nowcoder.com/discuss/23512?type=2&order=0&pos=20&page=2

  • map由什么实现的?你知道红黑树和AVL树有什么区别吗?为什么像map,set都用红黑树来实现?你有听过skip-list吗?
  • 用过vector.reserve()吗,vector的数组是怎么增长的?
  • map-reduce了解吗?
  • linux熟悉吗?目录权限,如644代表什么,目录如果有可执行权限代表什么?
  • 平时有使用vi吗?一般的linux命令熟悉吗?(如awk,grep等) 有用过gdb的调试吗?
  • TCP/UDP的区别,如何实现拥塞控制,如何实现可靠传输?UDP的应用? 可靠/不可靠 字节流/报文 连接/非连接 开销大/开销小 有拥塞控制/无拥塞控制 全双工/单工 拥塞控制目的是为了防止发送的数据包超出了网络的承载能力,涉及到所有的主机和路由器。拥塞控制认为丢包是因为数据包超出了网络的承载能力,所以在发送数据包的,需要慢开始,不断地达到网络的承载能力,将拥塞窗口以指数的规律增长到慢开始门限,超出门限后,如果继续增大数据包的发送量,认为网络将会出现拥塞,所以进入拥塞避免状态,该阶段以线性的增长规模扩大拥塞窗口,直到拥塞发生。如果某个数据包在超时计时器已到仍然没有收到对方的ACK,则认为网络中出现了拥塞,此时将慢开始门限设置为当前窗口的一半,并执行慢开始算法。如果收到了对方的三个重复的确认报文,则认为对方尚未收到丢失的报文,则尽早重传未被确认的报文,而不是等到超时计时器到时时才重传,这就是快速重传。如果出现了快速重传,则不执行慢开始算法,而是将拥塞窗口设置为慢开始门限,然后执行拥塞避免,这就是快恢复。

作者:Simon_ 链接:https://www.nowcoder.com/discuss/23512?type=2&order=0&pos=20&page=2 来源:牛客网

总结:

我觉得阿里更注重项目和分布式,多线程方面的知识。网易游戏的话更注重算法和C++吧。腾讯的话就什么都问,从C++的内存结构,RTTI,到网络编程,到智力题的算法实现。同学们可以根据自己要投的公司再好好准备准备。与君共勉。

准备实习之前刷过的书籍有《C++ primer》, 《深度探索C++对象模型》,《Effective C++》,《STL源码解析》,《剑指offer》还有就是一些网络和操作系统的书。刷了leetcode前120的题 目。

给未来找C++研发实习的学弟学妹的一些建议:

  1. 最好在找实习之前,先把C++ primer刷几遍,不懂的可以做个笔记,下次再看。当你看《对象模型》的时候,你会发现Primer中看不懂的知识都能在《对象模型》中迎刃而解。(关于Primer的学习方法我是参照https://www.zhihu.com/question/32087709中的第一个回答来做的)
  2. 《STL源码解析》最好也看看。面试官很喜欢问vector,map等的底层实现或者动态增长,如果不看书,关靠看博客和面经的话可能理解起来比较困难。
  3. 剑指offer是大部分公司一面的算法题,我觉得最好把每个题目都看懂吧。leetcode的话前100题确实很经典,二分查找,hash,动态规划,二叉树等的知识也可以通过刷题来巩固。
  4. 网络的话肯定是TCP/IP详解  卷1,有时间的话可以再看看Unix网络编程。时间更充裕的话最好刷一刷陈硕的《linux多线程服务器编程》,对多线程的知识会有一个了解。
  5. 最后一个建议就是越早准备越好,投递简历、面试期间只适合整理牛客网上的面经以及自己的面经,补缺补漏。毕竟面试题都是随机的,想要在面试中表现好一些,最好还是平时多积累。

C/C++后台研发 腾讯实习春招一面 凉凉~

https://www.nowcoder.com/discuss/68508?type=0&order=0&pos=8&page=0

  • vector底层的实现. 这里我说的比较多,所以他问到了insert具体做里那些事情. resize函数调用的是什么样. 扩容的情况.
  • 进程间通信机制 管道(pipe),有名管道(FIFO) 信号(signal) 消息队列 共享内存 信号量 套接字(socket)

阿里巴巴菜鸟网络二面

http://blog.csdn.net/caishenfans/article/details/44496581

  • fill和memset的区别 fill 是stl算法,会调用拷贝构造函数,如果是基础类型应该会直接按位复制。memset是c算法,就是一个字节一个字节拷贝到原始指针指向的位置。

  • C++内存管理方法 RAII全称为Resource Acquisition Is Initialization 利用栈展开过程栈上对象的析构函数将被 自动调用的保证,从而正确地释放先前获取的资源。RAII只有在栈展开正常执行的前提下才能正常工作。函数调用和正常的C++异常处理流程(异常处于 try-catch块)都存在栈展开。

  • 智能指针的实现 当有另外一个智能指针对当前智能指针进行拷贝时,引用计数器加1。 当两个智能指针进行赋值操作时,左边的指针指向的对象引用计数减1,右边的加1。 析构时,同样引用计数减1。 当引用计数为0时,对象被回收。 重新定义了一组operator :->指针,返回原始指针的指针。解引用*T,返回原始指针的解引用。

阿里实习电话面试经验,一个多小时

https://www.nowcoder.com/discuss/3836

  • 什么是二叉平衡树,如何插入节点,删除节点,说出关键步骤。

学生党如何拿到阿里技术offer:《阿里实习生面试经验(成功)》

https://yq.aliyun.com/articles/6395

阿里C++研发实习二面和三面面经(已跪)

https://www.nowcoder.com/discuss/27801?type=2&order=3&pos=55&page=1

实习面试总结

https://www.nowcoder.com/discuss/25302?type=2&order=3&pos=190&page=1

知乎牛客总结

阿里C++研发实习二面和三面面经(已跪)

【阿里、腾讯、头条】等12家企业【C++方向】30场面试经验

阿里校招实习一面面经

阿里巴巴秋招再见

百度三面(offer)&&阿里四面(进行中)

双非大三春招实习面经

实习面试总结

阿里,摩根,野村,腾讯,微软,图鸭科技面经分享

阿里四面面经 + 已成功拿到offer

我的2016笔试面试经验(送给下一届的学弟学妹们)

阿里巴巴2017实习面试分享(技术三面+HR面)

https://www.nowcoder.com/discuss/25446

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计