笔试准备:
做笔试题之前,需要一定的基础,相关学习网站:菜鸟教程、慕课网、B站等,针对自己的薄弱的方面,进行学习。《大话数据结构》适合初学者,有基础的同学可以看《算法导论》、《数据结构与算法》。针对刷题书籍可看《剑指offer》,建议至少看2遍。其他书籍:《程序员面试白皮书》、《程序员面试宝典》、《Java程序员面试笔试宝典》、《C和C++程序员面试秘籍》等可选择性看。
关于刷题:
公司真题比较难,最好先刷基础题。牛客比较好的是题型非常多,适合刷八股文,在专项练习里面,刷多了,后面的笔试基本就问稳了。
某扣也是专业的刷题网站,题量多,类型丰富。每题都有官方解析和刷题者优秀的解析且编程语言都有。分很多模块和专题,建议刷HOT300,前300道题目刷完基本上大多数题型都会碰到。常见的数据结构与算法,如堆栈、树、字符串、哈希表、链表、双指针,常见的算法如贪心算法、排序、位运算、递归、分治算法、动态规划、回溯算法等。
刷题重在自我思考和总结升华。第一次先自己看题目做一遍,有可能刚开始题目看不懂,没关系这个过程也是很重要的,主要是考察自己的思维能力,然后以采用自己的方法来实现,实在不行就暴力解决问题。做完后仔细调试,考虑是否有边界问题没考虑到,特殊输入情况等。最后提交查看结果。
第二次可以看官方答案,思考对比自己与标准答案的不同,进行优化代码。进一步精简代码,减少时间开销。最后总结此类问题如何解决,做一些刷题笔记。刷题的时需要考虑采用哪种数据结构来实现对应功能,时间复杂度如何以及输入输出。选择一个时间段,集中精力刷题,切勿三天打鱼两天晒网,可以参与刷题打卡。
通常正规的笔试可能会自带IDE,但大多数是允许使用本地编译器。以C++为例,常见的头文件一定要记住,像链表的创建,增删操作代码必须熟烂于心。大厂笔试的难度在中等以上,且题量通常为5个。每做一题记得保存代码,防止网络不佳导致代码丢失。面试的时候也会做笔试题,通常面试官出题不同,出题难度也不一定,通常为中等难度。
全部评论
(1) 回帖