赞
踩
首先要知道
基础的数据结构:数组、字符串、树、堆、栈、队列、哈希表
基础的算法: 枚举遍历, 二分查找,递归,回溯
明白基础的数据结构之后,我们可以发现 leetcode上已经做好了分类, 首先我们要按照类别来刷,推荐刷题顺序: 数组 ->字符串 ->链表->二分查找->排序->哈希表-> 栈->队列 ->树 、递归、回溯 -> 堆
第一次刷leetcode不要去碰什么动态规划,什么深度优先搜索之类的!
每一个类别里面有 简单、中等和困难的题目,例如这样,第一次刷leetcode,建议只做每个类别里面的简体题目,而且简单题目里面先做 通过率高的,如下图,在简单题目里 按照通过率又高到低的顺序做题
这样会避免刚开始做比较难的题目而丧失信心。
开始leetcode闯关:
第一轮刷题
题目类别推荐按照这个顺序来说: 数组 ->字符串 ->链表->二分查找->排序->哈希表-> 栈->队列 ->树 、递归、回溯 -> 堆 ,每一个类别只做简单的题目!而且是从通过率又高向低来刷。
这样刷过一遍之后 我们基础的数据结构和算法就已经差不多了
第二轮刷题
开始做第一轮类别里面中等难度的题目
同时开始刷更高难度类别的题目,推荐按照这个顺序去做:拓扑排序->分治算法-> 二叉搜索树->贪心算法->动态规划-> 深度优先搜索 -> 广度优先搜索-->图->数学
这里依然还是只做简单难度的题目 按照通过率又高向低
第三轮刷题
开始尝试做第一轮里面的 困难难度的题目 (不强求,仅仅是尝试,面试中也不会太难)
同时开始做第二轮里面 中等难度的题目(不用全都做,选一下自己一看就有想法的题目)
然后开始做做leetcode分类里面 第一轮和第二轮都没有涉及到的类别的题目,相对于其他类型,面试中最常考察的是: 字典树-> 并查集 -> 树状数组->线段树, 这里只做简单难度的就可以了!
剩余类型题目也凭个人喜好,选一些简单难度的题目做一做就可以了。
下面这个仓库写了详细的leetcode刷题攻略、各个类型经典题目刷题顺序、思维导图看一看一定会有所收获,欢迎给个star!https://github.com/youngyangyang04/leetcode-mastergithub.com
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。