一天一杯茶,一包烟,一包烟!很多小伙伴在刚开始刷LeetCode的时候可能会纠结。他们经常忘记刷,又忘记刷,进入死循环,刷题效率很差。其实刷题也需要注意技巧。掌握了正确的刷题方法,就能事半功倍~分享一些自己刷题的心得,希望对题主有所启发!主要有以下三个技巧:按题目分类刷题。难度应该是循序渐进的。好好总结一下。1.按主题分类问题。LeetCode上的题目都是分类的。建议一段时间内只刷同类型题。可以对这类数据结构或算法有更全面的了解,从而加深对这类题型的理解。理解。就像练功夫一样。前期要熟悉一些基本的招式,后期可以配合这些招式来掌握。个人比较习惯按类别刷题,感觉效果还不错。我整理了LeetCode题目,可以参考:数组运算LeetCode54螺旋矩阵LeetCode75颜色分类LeetCode73矩阵归零LeetCode76最小覆盖子串LeetCode384打乱数组LeetCode581最短无序连续子数组LeetCode945使数组唯一的最小增量链表操作LeetCode19删除链表的倒数第二个节点LeetCode25翻转链表k组LeetCode61旋转链表LeetCode138使用随机指针复制链表LeetCode206反向链表LeetCode141环形链表LeetCode142环形链表IILeetCode160相交链表LeetCode707设计链表栈LeetCode20ValidbracketsLeetCode32最长有效括号LeetCode155最小栈LeetCode224基础计算器LeetCode232用栈实现队列LeetCode316去除重复字母LeetCode215数组中第K大元素LeetCode347前K个高频元素树遍历LeetCode94二叉树中序遍历LeetCode102Binary树层次遍历LeetCode110平衡二叉树LeetCode144二叉树的前序遍历LeetCode145二叉搜索树阶段的后序遍历LeetCode98验证二叉搜索树LeetCode450删除二叉搜索树中的节点LeetCode701递归插入二叉搜索树LeetCode21合并两个有序链表LeetCode101对称二叉树LeetCode104二叉树的最大深度LeetCode226翻转二叉树LeetCode236二叉树最近公共祖先双指针/滑动窗口LeetCode3无重复字符的最长子串LeetCode11最多水的容器LeetCode15三数之和LeetCode16最近三数之和LeetCode26删除排序数组重复LeetCode42接雨水LeetCode121买卖股票的最佳时间LeetCode209最小长度子数组快慢指针遍历LeetCode141循环链表LeetCode202快乐数LeetCode876链表中间节点动态规划LeetCode5最长回文SubstringLeetCode53MaximumSubsequenceandLeetCode62DifferentPathsLeetCode64MinimumPathandLeetCode70StairClimbingLeetCode118YanghuiTriangleLeetCode300LongestAscendingSubsequenceLeetCode1143LongestCommonSubsequenceBacktrackingLeetCode10RegularExpressionMatchingLeetCode22ParenthesesGenerateLeetCode40CombinedSum2LeetCode46FullPermutationGreedyAlgorithmLeetCode11.ThecontainerthatholdsthemostwaterLeetCode406.RebuildLeetCode55.跳跃游戏LeetCode122.买卖股票的最佳时机IILeetCode309.买卖股票的最佳时机包括冻结期LeetCode714.买卖股票的最佳时机包括手续费及收款LeetCode200岛屿数LeetCode547省份数比特计算LeetCode52NQueenIILeetCode338比特数LeetCode1911的数量LeetCode2312的幂2.难度要循序渐进。这一点是给初学者的,记得上来只做hardlevel的题,会让你怀疑人生。正确的做法是循序渐进,从易到中,再过渡到难。但是国内大厂的检测算法普遍都是中等难度,难度级别应该很少检测。3、做好总结,多做总结!多做总结!多做总结!做好总结很重要,尤其是没有思路的题。看完其他大佬的解法,多想想哪些题有类似的解法。这类题的关键解题步骤是把自己的理解写下来,方便大家。过一会再来检查。虽然总结可能会花你半个小时甚至更多的时间,但如果你不总结,下次遇到这个问题,你可能会花更多的时间去思考和回答。
