春招提前批
春招提前批的时间一般都是在2月中旬就开始了一直持续到3月底, 如果是想要在正式春招之前得到心仪的offer最好就是提前批完成, 毕竟正式批参加人数更加的多, 笔试相对比较难. 当然每个公司其实留给校招和提前批的名额本身也很少的, 所以想要抓住这个机会的话就一定要尽早的报名, 最迟不要拖到提前批的中旬. 原因一 : 提前批的中旬的话大部分人也会这样考虑, 而且后面的人数会越来越多; 原因二 : 名额本身就很少, 就是先到先得; 原因三 : 这个时间段投递可能都会等几天甚至一周多的时间才会有回应.
我也有拖延症再加上第一次一点也不自信, 今年春招提前批(19年)2月28到3月7号才开始投递, 提前批时间已经过了快20天了, 导致很多最开始投递的到4月都还是待安排(其实就是挂了吧, 只是没有给反馈而已).
正式春招
正式春招的时间也因公司的不同而不同, 但大都在4月到5月这个时间段, 早一点的就是3月底可能就开始了. 正式春招的话公司收的人数就相对多一点(其实也可能是提前批没有招满), 但是参加的人也会更多, 毕竟应届生也会参加. 基本每个公司为了筛选掉大部分的人, 都会采用笔试, 所以呢, 对自己算法很差的同学就相当的吃亏. 同时从另一个方面看, 如果提前批就没有得到offer本身就是一个打击, 正式批可能就会更加的吃力, 心态就很容易崩.
春招复习的时间
为了春招得到满意的offer提前复习显得尤为重要. 复习的时间建议2到3个月, 时间过长容易疲惫, 过短面试没有底气. 我其实复习的时间是两个月左右, 这其中还会去学习其他的东西, 整体算也还就一个多月; 时间短了也就没有复习号操作系统和网络, 所以这是我春招的短板. 还有一个短板就是算法, 算法还是希望从准备春招开始就进行学习, 主要先看剑指offer然后leetcode或者牛客网刷题, 刷题也要有针对性的刷才好.
复习期间最主要的就是将以前的书认真的看一遍, 同时做好详细的总结, 当然尽量的深入, 毕竟重新看已经不是你以前的水平了, 需要的就是对这个知识点进行深入的探讨和扩展, 不然两三个月时间用来干嘛. 在这个过程中要尽量的将之前学的知识成体系的联系起来. 我自己就是在复习中对自己平时学得多么粗糙感到自责以至于自己已经打算后面的几个月边学习边将知识重新总结.
复习建议
首先这个给基础的, 再以个人方向来复习自己方向的重点. 我毕竟是学c/c++的, 所以过多的就是c++的知识点吧. 最重要的还是自己平时的学习基础.
- 操作系统
- 进程间的通信;
- 进程和线程;
- LRU算法;
- 文件系统(VFS, inode节点);
- 内存管理
- 死锁(避免, 算法)
- 信号
- ELF(了解最好)
- 网络
- TCP三次握手/四次挥手过程, 状态
- socket编程
- 客户端/服务端
- I/O多路复用
- TCP, UDP区别
- NAT(了解)
- 算法(剑指offer看几遍吧)
- dp
- 树(红黑树基本过程, AVL和rb的区别)
- b-和b+树(数据库底层实现)
- 跳表(了解)
- 有序链表的合并等等
- 数据库(不太清楚, 我没有怎么学)
- c++
const
和static
区别volatile
- 智能指针(最好自己能简单实现)
malloc
和new
区别malloc
怎么实现, 过程memcpy
实现(地址重叠怎么考虑)- 拷贝构造函数, 构造函数, 析构函数
- 多态, 虚函数(内存分布要了解)
春招面经
从3月到4月初面试了cvte, 东方财富, 深信服, 腾讯. 其他公司大都没有消息, 百度因为自己当天有事没有去高校现场面, 也就没有消息了. cvte和东方财富目前还在等待hr面, 已拿深信服和腾讯的offer.
cvte
- 自我介绍
- 项目介绍
- 线程和进程的区别
- tcpip四次挥手
- udp和tcp区别
- udp怎么实现可靠
- malloc和new的区别
- vector
- 多线程和多进程编程
- 什么时候用多进程什么时候用多线程
- 死锁
- 进程通信
- 智能指针
- 线程挂了对进程有什么影响
cvte
实习好像只有一面, 还有一些问题忘记了.
腾讯一面
- 内存对齐的原因
- 结构体对齐?怎么对齐?两个例子计算结构体大小。为什么最后一个变量不足也要对齐?怎样修改内存对齐的大小?
- #ifndef这个在源码
- malloc实现原理
- 多态
- tcp/ip三次握手四次挥手
- 四次挥手的状态变化
- 网络还有忘了
- 进程通信
- socket编程函数
- IO复用讲一下
- 二叉树
- vector map set list底层实现
- 手写memcpy函数
腾讯二面
- 自我介绍
- vector?为什么会先申请更大的空间?
- 服务端怎么写程序
- 怎么实现一个o(1)的申请和释放内存
- 怎么实现一个定时器?
腾讯三面
- 自我介绍
- malloc调用
- 网络编程
- 项目
- 函数调用的过程
- 线程和函数调用区别
- stl。迭代器和迭代器最关键的是什么?
- 哪些迭代器在删除一个元素后会失效
- epoll等等
- 数据库(不会)
- 线程调用的过程
- 还有好几个底层的问题忘了
- 多态有几种方式。
- 用户态到内核态方式。
- 系统调用开销在哪里。
- 虚函数。
- 玩过哪些游戏啊。
- c++的一些问题
- set和map谁了一下做谁的基类,为什么。
- 怎么重新实现自己的内存管理
- 自己定义一个结构体用set做底层,该结构体必须要实现什么功能(重载<),为什么重载?相等怎么判断。
腾讯hr面
- 面试没有回答上的问题怎么处理的啊?
- 项目的问题怎么解决的
- 项目卡住了你怎么办,怎么调整心情
- 室友怎么评价我的?
- 玩过什么游戏啊?
东方财富因为问的太少了也就不一一罗列了. 至于深信服, 自己很是抱歉, 前前后后也挺麻烦他们的, 贵公司我一直也很感谢, 理由也不愿叙述了. 腾讯的面试官给我的感觉也都很niec的, 真的感觉都很好的.
最后
对于春招提前批还是希望早点准备, 心态要平衡, 这个阶段可能很艰难, 很难熬, 但我也相信大家都能够收到心仪的offer.
当然如果有什么疑问或者什么问题, 建议也可以通过邮箱与我交流 [email protected]