91-days-algorithm icon indicating copy to clipboard operation
91-days-algorithm copied to clipboard

91天学算法-Leetcode图解题解集合(JavaScript/C++/Python) Solutions and Explainations with Hand Drawings in Chinese(JavaScript/C++/Python)

Leetcode 题解

路西法的91天学算法第6期题目列表

戳这里🔗

更新说明

转到 Notion 上记录啦,更方便些,戳这里🔗

这个仓库可能不更新啦,内容也会逐步搬到 Notion 上的。

不过还是不要脸地说句,如果我的题解有帮到你的话,还是欢迎右上角 Star 🌟 这个仓库的。(拜托拜托ớ ₃ờ)

TOC

基础篇 进阶篇 专题篇
数组/栈/队列 高频面试题 二分法
链表 前缀树 滑动窗口
并查集 位运算
哈希表 跳表 搜索(BFS/DFS/回溯)
双指针 剪枝 背包问题
- 字符串匹配 动态规划
- 分治
- - 贪心

基础篇

数组,栈,队列

每日一题

  • [x] 【day-01】66.加一
  • [x] 【day-02】821.字符的最短距离
  • [x] 【day-03】1381.设计一个支持增量操作的栈
  • [x] 【day-04】394.字符串解码
  • [x] 【day-05】232.用栈实现队列
  • [x] 【day-06】768.最多能完成排序的块 II

数组拓展题目

栈拓展题目

队列拓展题目

相关专题

链表

每日一题

  • [x] 【day-07】24.两两交换链表中的节点
  • [ ] 【day-08】61.旋转链表
  • [ ] 【day-09】109.有序链表转换二叉搜索树
  • [x] 【day-10】160.相交链表
  • [x] 【day-11】142.环形链表 II
  • [x] 【day-12】146.LRU 缓存机制

链表拓展题目

  • [x] 2.两数相加
  • [x] 19.删除链表的倒数第 N 个结点
  • [x] 21.合并两个有序链表
  • [x] 83.删除排序链表中的重复元素
  • [x] 206.反转链表

每日一题

  • [x] 【day-13】104.二叉树的最大深度
  • [x] 【day-14】100.相同的树
  • [x] 【day-15】129.求根到叶子节点数字之和
  • [x] 【day-16】513.找树左下角的值
  • [x] 【day-17】297.二叉树的序列化与反序列化
  • [x] 【day-18】987.二叉树的垂序遍历

树拓展题目

  • [x] 105.从前序与中序遍历序列构造二叉树
  • [x] 404.左叶子之和
  • [x] 257.二叉树的所有路径
  • [x] 112.路径总和
  • [x] 543.二叉树的直径
  • [x] 98.验证二叉搜索树

哈希表

每日一题

  • [x] 【day-19】1.两数之和
  • [x] 【day-20】347.前 K 个高频元素
  • [x] 【day-21】447.回旋镖的数量
  • [x] 【day-22】3.无重复字符的最长子串
  • [x] 【day-23】30.串联所有单词的子串
  • [x] 【day-24】37.解数独

哈希表拓展题目

  • [x] 645.错误的集合
  • [x] 面试题 04.01.节点间通路
  • [ ] 36.有效的数独
  • [x] 149.直线上最多的点数

双指针

每日一题

  • [x] 【day-25】35.搜索插入位置
  • [x] 【day-26】74.搜索二维矩阵
  • [x] 【day-27】26.删除排序数组中的重复项
  • [x] 【day-28】876.链表的中间结点
  • [x] 【day-29】1052.爱生气的书店老板
  • [x] 【day-30】239.滑动窗口最大值

双指针拓展题目

  • [x] 875.爱吃香蕉的珂珂
  • [x] 167.两数之和 II - 输入有序数组
  • [x] 42.接雨水
  • [x] 面试题 17.11.单词距离
  • [ ] 11.盛最多水的容器

进阶篇

高频面试题

二叉树遍历系列

  • [x] 【day-34】二叉树遍历系列

反转链表系列

  • [x] 【day-35】206.反转链表
  • [x] 【day-35】92.反转链表 II
  • [x] 【day-35】25.K 个一组翻转链表

位运算系列

  • [ ] 【day-36】78.子集

动态规划系列

  • [x] 【day-37】62.不同路径
  • [x] 673. 最长递增子序列的个数
  • [ ] 70. 爬楼梯
  • [ ] 121. 买卖股票的最佳时机
  • [ ] 122. 买卖股票的最佳时机 II
  • [ ] 123. 买卖股票的最佳时机 III
  • [ ] 188. 买卖股票的最佳时机 IV
  • [ ] 309. 最佳买卖股票时机含冷冻期
  • [ ] 714. 买卖股票的最佳时机含手续费

有效括号系列

  • [x] 【day-38】20.有效括号
  • [x] 【day-38】32.最长有效括号

设计系列

  • [ ] 【day-39】剑指 Offer09.用两个栈实现队列
  • [ ] 【day-39】641.设计循环双端队列
  • [x] 【day-39】146.LRU 缓存机制
  • [ ] 【day-39】1206.设计跳表

前缀和系列

  • [x] 【day-40】网易面试题
  • [x] 【day-40】560.和为 K 的子数组
  • [x] 【day-40】1371.每个元音包含偶数次的最长子字符串

前缀树

  • [x] 【day-41】208.实现 Trie
  • [x] 【day-42】677.键值映射
  • [x] 【day-43】面试题 17.17.多次搜索

并查集

每日一题

  • [x] 【day-44】547.朋友圈
  • [x] 【day-45】924.尽量减少恶意软件的传播
  • [x] 【day-46】1319.连通网络的操作次数

拓展

  • [x] 1202.交换字符串中的元素

跳表

  • [ ] 【day-47】1206.设计跳表

剪枝

每日一题

  • [x] 【day-48】814.二叉树剪枝
  • [x] 【day-49】39.组合总和
  • [x] 【day-50】40.组合总和 II
  • [ ] 【day-51】47.全排列 II

字符串匹配

每日一题

  • [ ] 【day-52】28.实现 strStr()

拓展题目

  • [ ] 1371.每个元音包含偶数次的最长子字符串
  • [ ] 面试题 17.13.恢复空格
  • [ ] 1316.不同的循环子字符串
  • [ ] 215.数组中的第 K 个最大元素
  • [ ] 451.根据字符出现频率排序
  • [ ] 295.数据流的中位数
  • [ ] 378.有序矩阵中第 K 小的元素
  • [ ] 1054.距离相等的条形码
  • [ ] 面试题 17.09.第 k 个数

每日一题

  • [x] 【day-54】215.数组中的第 K 个最大元素
  • [x] 【day-55】1046.最后一块石头的重量
  • [x] 【day-56】23.合并 K 个升序链表
  • [x] 【day-57】451.根据字符出现频率排序
  • [x] 【day-58】378.有序矩阵中第 K 小的元素
  • [x] 【day-59】1054.距离相等的条形码

专题篇

二分法

每日一题

  • [x] 【day-61】69.x 的平方根
  • [x] 【day-62】278.第一个错误的版本
  • [x] 【day-63】162.寻找峰值

拓展题目

  • [x] 33.搜索旋转排序数组
  • [x] 81.搜索旋转排序数组 II
  • [ ] 34.在排序数组中查找元素的第一个和最后一个位置
  • [ ] 4.寻找两个正序数组的中位数
  • [ ] 222.完全二叉树的节点个数

滑动窗口

每日一题

  • [x] 【day-67】1456.定长子串中元音的最大数目
  • [ ] 【day-70】76.最小覆盖子串
  • [ ] 【day-71】30.串联所有单词的子串

拓展题目

  • [x] 581.最短无序连续子数组

位运算

  • [ ] 【day-72】268.缺失数字
  • [ ] 【day-73】78.子集

搜索(BFS, DFS, 回溯)

  • [x] 【day-74】1254.统计封闭岛屿的数目

  • [ ] 【day-75】 51.N 皇后

  • [ ] 【day-76】 130.被围绕的区域

  • [ ] 【day-77】 827.最大人工岛

  • [ ] 【day-78】 89.格雷编码

  • [x] 【day-79】980.不同路径 III

  • [x] 5210.球会落何处

背包问题

  • [x] 【day-80】322.零钱兑换
  • [x] 【day-81】416. 分割等和子集
  • [x] 【day-82】494. 目标和
  • [ ] 【day-83】474. 一和零

动态规划

  • [ ] 【day-84】爬楼梯变种
  • [ ] 【day-85】铺地毯-2021 网易校招
  • [ ] 【day-86】935.骑士拨号器
  • [ ] 【day-87】1458.两个子序列的最大点积

分治

  • [x] 【day-88】96.不同的二叉搜索树
  • [ ] 【day-89】23.合并 K 个升序链表

贪心

每日一题

  • [ ] 【day-90】765.情侣牵手
  • [x] 【day-91】881.救生艇

贪心拓展题目

  • [x] 135.分发糖果
  • [x] 455.分发饼干
  • [x] 976.三角形的最大周长
  • [x] 435.无重叠区间
  • [x] 605.种花问题

其他

  • [x] 77.组合
  • [x] 5.最长回文子串
  • [ ] 面试题 04.09. 二叉搜索树序列

在线电子书

笔记