当前位置 博文首页 > 欢迎关注公众号:【码农突围】,回复9999,可以获取一份LeetCode

    欢迎关注公众号:【码农突围】,回复9999,可以获取一份LeetCode

    作者:[db:作者] 时间:2021-06-13 12:14

    点击上方“俊林”,马上关注,每天早上8:50准时推送

    真爱,请置顶或星标

    很多朋友在后台留言,说是否有刷题总结,鱼哥从github上了解到一份不错的刷题集合记录,分享给大家。本文作者:azl397985856,github仓库见文末

    介绍

    leetcode 题解,记录自己的 leetcode 解题之路。

    本仓库目前分为五个部分:

    • 第一个部分是 leetcode 经典题目的解析,包括思路,关键点和具体的代码实现。

    • 第二部分是对于数据结构与算法的总结

    • 第三部分是 anki 卡片, 将 leetcode 题目按照一定的方式记录在 anki 中,方便大家记忆。

    • 第四部分是每日一题

    • 第五部分是计划, 这里会记录将来要加入到以上三个部分内容

    只有熟练掌握基础的数据结构与算法,才能对复杂问题迎刃有余。

    使用指南

    • 对于最近添加的部分, 后面会有 ? 标注

    • 对于最近更新的部分, 后面会有 ? 标注

    • 将来会在这里更新anki卡片

    • 这里有一张互联网公司面试中经常考察的问题类型总结的思维导图,我们可以结合图片中的信息分析一下。

    • 640?wx_fmt=jpeg

    其中算法,主要是以下几种:

    • 基础技巧:分治、二分、贪心

    • 排序算法:快速排序、归并排序、计数排序

    • 搜索算法:回溯、递归、深度优先遍历,广度优先遍历,二叉搜索树等

    • 图论:最短路径、最小生成树

    • 动态规划:背包问题、最长子序列

    数据结构,主要有如下几种:

    • 数组与链表:单 / 双向链表

    • 栈与队列

    • 哈希表

    • 堆:最大堆 / 最小堆

    • 树与图:最近公共祖先、并查集

    • 字符串:前缀树(字典树) / 后缀树

    精彩预告

    0042.trapping-rain-water:

    640?wx_fmt=png

    浏览器中的栈:

    640?wx_fmt=png

    backtrack problems:

    640?wx_fmt=png

    0198.house-robber:

    640?wx_fmt=png

    0454.4-sum-ii:

    640?wx_fmt=png

    Top题目进度

    • Top 100 Liked Questions (54 / 100)

    • Top Interview Questions (82 / 145)

    传送门

    leetcode 经典题目的解析

    这里仅列举具有代表性题目,并不是全部题目

    简单难度

    • 0020.Valid Parentheses

    • 0026.remove-duplicates-from-sorted-array

    • 0088.merge-sorted-array

    • 0104.maximum-depth-of-binary-tree ?

    • 0121.best-time-to-buy-and-sell-stock

    • 0122.best-time-to-buy-and-sell-stock-ii

    • 0125.valid-palindrome ?

    • 0136.single-number

    • 0155.min-stack ?

    • 0167.two-sum-ii-input-array-is-sorted

    • 0172.factorial-trailing-zeroes ?

    • 0169.majority-element

    • 0190.reverse-bits

    • 0191.number-of-1-bits

    • 0198.house-robber

    • 0203.remove-linked-list-elements

    • 0206.reverse-linked-list

    • 0219.contains-duplicate-ii

    • 0226.invert-binary-tree

    • 0263.ugly-number

    • 0283.move-zeroes

    • 0342.power-of-four

    • 0349.intersection-of-two-arrays

    • 0371.sum-of-two-integers

    • 0575.distribute-candies

    中等难度

    • 0002. Add Two Numbers

    • 0003. Longest Substring Without Repeating Characters

    • 0005.longest-palindromic-substring ?

    • 0011.container-with-most-water

    • 0015.3-sum

    • 0019. Remove Nth Node From End of List

    • 0024. Swap Nodes In Pairs

    • 0029.divide-two-integers ?

    • 0039.combination-sum

    • 0040.combination-sum-ii

    • 0046.permutations

    • 0047.permutations-ii

    • 0048.rotate-image ?

    • 0049.group-anagrams ?

    • 0055.jump-game

    • 0056.merge-intervals

    • 0062.unique-paths

    • 0073.set-matrix-zeroes

    • 0075.sort-colors

    • 0078.subsets

    • 0086.partition-list

    • 0090.subsets-ii

    • 0091.decode-ways

    • 0092.reverse-linked-list-ii

    • 0094.binary-tree-inorder-traversal

    • 0098.validate-binary-search-tree ?

    • 0102.binary-tree-level-order-traversal

    • 0103.binary-tree-zigzag-level-order-traversal

    • 0131.palindrome-partitioning ?

    • 0139.word-break

    • 0144.binary-tree-preorder-traversal

    • 0150.evaluate-reverse-polish-notation

    • 0152.maximum-product-subarray

    • 0199.binary-tree-right-side-view

    • 0201.bitwise-and-of-numbers-range

    • 0208.implement-trie-prefix-tree

    • 0209.minimum-size-subarray-sum

    • 0230.kth-smallest-element-in-a-bst

    • 0236.lowest-common-ancestor-of-a-binary-tree?

    • 0238.product-of-array-except-self

    • 0240.search-a-2-d-matrix-ii

    • 0279.perfect-squares

    • 0309.best-time-to-buy-and-sell-stock-with-cooldown ?

    • 0322.coin-change

    • 0328.odd-even-linked-list

    • 0334.increasing-triplet-subsequence

    • 0365.water-and-jug-problem

    • 0416.partition-equal-subset-sum

    • 0445.add-two-numbers-ii

    • 0454.4-sum-ii

    • 0494.target-sum

    • 0516.longest-palindromic-subsequence ?

    • 0518.coin-change-2

    • 0609.find-duplicate-file-in-system ?

    • 0875.koko-eating-bananas

    • 0877.stone-game

    • 0887.super-egg-drop

    • 0900.rle-iterator

    • 1031.maximum-sum-of-two-non-overlapping-subarrays ?

    困难难度

    • 0023.merge-k-sorted-lists

    • 0032.longest-valid-parentheses ?

    • 0042.trapping-rain-water

    • 0128.longest-consecutive-sequence ?

    • 0145.binary-tree-postorder-traversal

    • 0146.lru-cache

    • 0239.sliding-window-maximum

    • 0295.find-median-from-data-stream ?

    • 0301.remove-invalid-parentheses

    数据结构与算法的总结

    • 数据结构(草稿)

    • 基础算法(草稿)

    • 二叉树的遍历

    • 动态规划

    • 哈夫曼编码和游程编码

    • 布隆过滤器

    • 字符串问题

    anki 卡片

    Anki主要分为两个部分:一部分是关键点到题目的映射,另一部分是题目到思路,关键点,代码的映射。

    全部卡片都在anki-card

    使用方法:

    anki - 文件 - 导入 - 下拉格式选择“打包的 anki集合”,然后选中你下载好的文件,确定即可。

    更多关于anki使用方法的请查看anki官网

    目前已更新卡片一览(仅列举正面):

    • 二分法解决问题的关键点是什么,相关问题有哪些?

    • 如何用栈的特点来简化操作, 涉及到的题目有哪些?

    • 双指针问题的思路以及相关题目有哪些?

    • 滑动窗口问题的思路以及相关题目有哪些?

    • 回溯法解题的思路以及相关题目有哪些?

    • 数论解决问题的关键点是什么,相关问题有哪些?

    • 位运算解决问题的关键点是什么,相关问题有哪些?

    已加入的题目有:#2 #3 #11

    每日一题

    • 每日一题汇总

    • 每日一题认领区

    计划

    • anki 卡片 完善

    • 字符串类问题汇总

    点击阅读原文,可以直接到达github仓库,最后推荐一个公号Python技术之巅,对Python感兴趣的,强烈推荐关注这个号。

    640?wx_fmt=jpeg


    ?推荐阅读

    作为程序员,要保持工作和家庭平衡,就那么难么?

    屌丝的眼泪,因为错过的初恋,才搞清楚PNG图片压缩原理

    我用Python爬了点你们需要的电影,这些电影真的很不错~


    640?wx_fmt=png

    喜欢就点个在看吧