个人分享一下。我开始刷题的时候和题主有同样的困惑,因为我一开始刷题的时候,不懂得东西太多,基础贼差。我最开始刷的是leetcode easy的题,100道左右。  开始刷题的时候先思考,不要怕浪费时间,哪怕是想出来时间复杂度不理想的方案,也要实现出来;如果实在是一点思路都没有就看答案,有些题目的特点就是思路奇特,看一下答案就恍然大悟。注意一点,看答案一定要学习最优解。  一边刷一边总结。题型一般以下几种。 数组和矩阵(排序啊) 字符串操作 栈和队列 链表(注意细节,技巧较少) 二叉树(递归和遍历) 动态规划(先学算法思想,不要直接刷题) 位运算(这部分技巧很强,炫酷) 大数据和空间限制(什么50G文件啦,1亿个节点啦,注意思想)   多写多练。有些问题简直不算是题,就是基本程序员的能力,比如二叉树的前中后遍历的递归和非递归形式,各种排序算法实现等等,这些就是基础能力,不会写就背下来。之前向一个ACMer请教树状数组的问题,我说你怎么对这个东西这么熟练,他说:这破东西实现了一百多次了,忘了都难。。。。  推荐leetcode,坚持下来就有好结果。祝好。
点赞 2

相关推荐

不愿透露姓名的神秘牛友
11-29 12:19
点赞 评论 收藏
分享
AFBUFYGRFHJLP:直接去美帝试试看全奖phd吧
点赞 评论 收藏
分享
牛客网
牛客企业服务