早期在牛客的刷题,惨烈。
感觉到刷题的重要性是在第一次面了字节实习后发现的,一个反转链表,重复的二分,写的磕磕绊绊。让我认识到社会的残酷。面试官可能看出了我是个新手菜鸡,告诉我:没事,年轻人,多努力吧,嘟嘟嘟~~~。
开始就刷牛客的剑指offer,强烈推荐新手,真的是包罗万象?后期秋招笔试中,中小公司大多都是它的拓展版本或者原题。
然后各个方式刷题下来最少解决的有300道~,本人比较愚钝全靠硬钢,然后顺利过了二十家多左右的笔试,也拿到过鹅厂等一些心仪的offer。
学好数据数据结构是刷题的必备呀,数组 链表 堆 栈 树 二叉树
然后了解一些简单的常用算法套路:二分?topK?递归?dp?贪心?回溯等等
简单排序算法:插排,快排,归并排序等等
感觉以上就是刷题的基础,最少得了解一下,欢迎大佬补充。
总结:
0. 感觉首先搞懂自己语言的集合内容,基础语法,常用工具等,会对刷题速度提升有很多帮助。
1. 就是不停的刷刷刷,我个人推荐,不要东刷一个西选一个,个人建议找准一类题刷,比如斐波拉契数的题,可以一次研究完啊,无论是由底向上,还是由上到底的方式都可以尝试多解。然后刷拓展或者相似题型,比如青蛙跳台阶变异版本或者汉罗塔问题之类的。就是一种类型的题多拓展的了解。
2. 不要硬想,个人觉得如果完全没有一丝丝头绪:那就多看看题解,优秀人很多多向大佬们学习,哈哈,有些想法确实很巧妙。然后总结。
3. 刷到一定程度,个人感觉自己得总结一下自己大致的解决问题的办法,比如二分,递归,贪心,dp等用的场景多是什么样
4. 然后多回顾自己以前刷过的简单的题目,简单的题目不一定简单
5. 后期笔试都是有时长的,大家也要注意自己的结题时间。一般中难半个小时以内最好。
以上便是个人的的总结啦。=========》仅代表个人观点,不清楚有无普适性
刷题反正是一个相对周期比较长且枯燥的过程,大家多努力加油吧。
全部评论
(1) 回帖