校园招聘往往有一道迈不过的坎,就是笔试,相对于面试来说,笔试显得更呆板和残酷。

不论你各方面能力如何,只要笔试不过,就没有面试机会,特别是有些笔试只考算法题,做对就有分,做错可能一分都得不到。往往成绩是按答对题数来算,而不是分数。

简单来说,笔试是最粗暴且成本最低的刷人方式,因为公司人力有限,应聘人数往往却很多,不可能都安排面试,所以笔试和简历筛选就可以刷掉大部分人,有一些人可能是偶尔发挥不好,但公司不在乎。

供求关系摆在这里,笔试显然是不可避免的。虽然有一些提前批面试不需要经过笔试,但大部分的公司都需要经历笔试环节。

俗话说的好,上有政策下有对策,我们学生也会有相应的方式去准备笔试。大概讲一些方法吧。

 

1 打好算法和数据结构基础

在做题之前,你需要学会数据结构与算法的基础知识。推荐看一些算法和数据结构入门书籍,同时使用你擅长的语言自己写一遍。熟能生巧,直到你真正掌握。

 

2 剑指offer

剑指offer是一本经典的算法书籍,不仅适用于面试,有些公司的笔试题也会参考剑指offer。

 

3 LeetCode

刷完剑指offer并且真正掌握以后,可以开始刷LeetCode了,LeetCode的题目往往被直接搬到笔试题中考察。建议大家按照一定顺序进行刷题,主刷medium和easy。

 

4 公司真题

有些公司笔试题喜欢自己出,有时候题型很奇怪,出题形式也不尽相同,结果经常让人猝不及防,只能放弃。所以提前刷一些公司的笔试真题也是非常重要的一步,等你刷多了,就会感觉碰到什么样的题都能写一点。

 

5 熟悉自己使用的语言

这里主要指的是要了解编程语言中数据结构的使用,比如栈,队列,链表,哈希表等等,还要会使用一些排序方法,比较器。除此之外,还得会写基本的输入输出,因为很多在线笔试的网站都要求自己完成输入输出。

 

6 科学答题

这里说一个小技巧,就是实在想不出来的话,可以直接输出测试用例。

 

7 检查错误

另外,有些题目可能会超时,原因是复杂度太大,可以考虑空间换时间。

而有些题报内存问题,此时要检查一下数组大小是不是超过规定的空间复杂度了。

如果是递归栈溢出,则可能要考虑剪枝或者使用非递归做法。

另外,记得要检查你的变量类型是否正确,有时候可能需要用long但你却用了int,也会导致白白丢分。

 

8 本地调试

很多笔试题都支持本地编辑器提交处理,所以你可以先在本地进行测试,如果有问题的话可以考虑断点调试,更容易发现错误在哪里。

 

更多专题

 

关于秋招的一些真相

我的秋招经验分享(内附校招交流群)

应届生如何获取招聘信息

 

 

多内容请关注微信公众号【程序员江湖】

 

作者黄小斜,斜杠青年,某 985 硕士,阿里 Java 研发工程师,目前专注于后端技术,同时致力于分享自学编程、求职面试、程序员自我提升等经验和感悟,以及从技术小白成长为BAT程序员的学习心得和心路历程(关注公众号后回复”资料“即可领取 3T 免费技术学习资源,包含Java、C++、Python、大数据、移动端、前端、机器学习等方向,同时也将赠送我原创的【程序员校招指南】等精品资源)