leetCode icon indicating copy to clipboard operation
leetCode copied to clipboard

:pencil2: 算法相关知识储备 LeetCode with Python and JavaScript :books:

算法知识储备 Leetcode with Python and Js

数组(及其相关结构)

  • 可容纳最多水的一组容器.py
  • 糖果公平交换.py
  • 已排序的数组中找到第一和最后一个元素.py
  • 旋转过的排序数组中找到最小的元素.py
  • 旋转过的排序数组中找到最小的元素II.py
  • 足球粉儿~.py
  • 水果分到篮子里.py
  • 三连递增的子序列.py
  • 插入间隔.py
  • 能组合成的最大的数.py
  • 最长的连续子序列.py
  • 岛屿的最大区域.py
  • 相乘最大的子数组.py
  • 最大的子数组.py
  • 合并数组.py
  • 丢失的数字.py
  • 岛屿的数量.py
  • 数组中除自己外的相乘.py
  • 从链表尾中删除第N个节点.py
  • 从旋转过的排序数组中搜索某数.py
  • 从旋转过的排序数组中搜索某数II.py
  • 落单的数.py
  • 以数对为基准排序.py
  • 螺旋矩阵.py
  • 子数组合中最小的一个.py
  • 3D图形的表面区域.py
  • 被包围的区域.py
  • 两个链表相加II.py
  • 两个链表相加.py
  • 两个链表相交点.py
  • 数组中第k大个元素.py
  • 数组中第k大个元素.js
  • 链表中的环.py
  • 链表中的环.js
  • 翻转链表.js
  • K个一组翻转链表.js
  • 保持当前城市天际线的最大可增加能容量.py
  • 两个排序后的列表的中位数.py
  • 合并两个排序过的列表.py
  • 合并排序的数组.py
  • 两个列表的(相同部分)最小索引和.py
  • 翻转对.py
  • 2D矩阵搜索.py
  • 2D矩阵搜索II.py
  • 第三大的数.py
  • 3数相加.py
  • 最频繁的K个元素.py
  • 两数相加II数组已排序.py
  • 两数相加.py
  • 两数相加.js
  • 多重三数相加.py
  • 最佳买卖时机I_II.py
  • 二进制子数组和.py
  • 统计小于自身且在自身之后的数.py
  • 寻找极值.py
  • FizzBuzz.py
  • 加油站.py
  • 本地和全局的倒置.py
  • 组团的变位词.py
  • 两数组的重叠部分.py
  • 两数组重叠部分II.py
  • 跳跃游戏.py
  • 跳跃游戏II.py
  • 距离最近的人的可走过的最远距离.py
  • 循环子数组的最大和.py
  • 最小下落路径和.py
  • 最小路径和.py
  • 单双链表.py
  • 解体大数组.py
  • 解体列表.py
  • Pascal 三角I_II.py
  • +1.py
  • 从已排序的数组中删除重复数据.py
  • 从已排序的数组中删除重复数据II.py
  • 从已排序的列表中删除重复数据.py
  • 从已排序的列表中删除重复数据II.py
  • 删除链表中的元素.py
  • 旋转列表.py
  • 在矩阵中捣蛋.py
  • 洗牌.py
  • 最大的滑动窗口.py
  • 根据"对er"排序数组II.py
  • 颜色颜色.py
  • 螺旋矩阵II.py
  • 等于K的子数组.py
  • 三角.py
  • 单词子集.py

回溯

  • 生成括号.py
  • 子集.py

广度优先搜索

  • 树中最靠近左下的节点的值.py
  • 二叉树层级遍历.py
  • 二叉树层级遍历II.py
  • 二叉树层级 Zigzag 遍历.py
  • 二叉树的最大深度.py
  • 单词阶梯.py

设计类

  • LRU 缓存设计.py
  • RLE 迭代器.py
  • O(1)复杂度的插入删除和取随机容器.py

深度优先搜索

  • 路径和.py
  • 词搜索.py
  • 词搜索II.py

动态规划

  • 交错的字符串.py
  • 最长的子序列.py
  • 子数组的或运算.py
  • 交换硬币.py
  • 江洋大盗.py
  • 江洋大盗II.py
  • 最长的连续递增子序列.py
  • A子数组中的最大比B子数组中最小要小的子数组.py
  • 最大长度的数对链.py
  • 最长增长子序列的个数.py
  • 挑卡片.py
  • 唯一路径.py
  • 唯一路径II.py
  • 爬楼.py
  • 爬楼.js
  • 最小花费爬楼.js
  • 组合总和.js
  • 解码方式.py
  • 在某字符串中找到所有的变位词.py
  • 转换字符串到单调递增.py
  • 小于K的子数组积.py
  • 单词中断处.py

  • 排序矩阵中第k小个元素.py
  • 合并K个已排序过的链表.py
  • 合并K个已排序过的链表.js
  • 从数据流中找中位数.py

排序

  • 选择,插入,快排,归并
  • 排序列表.py
  • 奇怪的排序II.py

纯数字问题

  • 两数相除.py
  • Sqrt(x).py

  • 可取最小值的栈.py
  • 使用栈模拟队列.py
  • 使用递归翻转栈.py
  • 直方图中最大的矩形.py
  • 收集雨水.py

字符串

  • 找到可被模板替换的字符串.py
  • 电话号码排列组合.py
  • 最长的公共前缀.py
  • 最小窗口子字符串.py
  • 翻转整数.py
  • 字符串->整数.py
  • 有效的数字.py
  • 有效的括号.py
  • 大写侦查.py
  • 汉明距离.py
  • 实现StrStr().py
  • 同结构字符串.py
  • Jewels和Stones.py
  • 最末单词的长度.py
  • 最长的子字符串.py
  • 最长的回文子字符串.py
  • 字符串中的分段数量.py
  • 替换词.py
  • 翻转字符串.py
  • 转换至小写.py
  • 词模板.py
  • 字符串中最先出现的唯一字符.py
  • 长印刷名字.py
  • 使括号有效的最小添加数.py
  • 字符串中的全排列.py
  • 转换单词.py
  • 简化路径.py
  • 根据频率排序字符.py
  • 独一无二的邮箱地址.py
  • 有效变位词.py
  • 有效回文字符串.py

  • 根据前序和后序的结果生成二叉树.py
  • 转换已排序的数组到二叉搜索树.py
  • 转换已排序的链表到二叉搜索树.py
  • 镜像树.py
  • 有效的二叉搜索树.py
  • 二叉搜索树.py
  • 二叉树的最大路径和.py
  • 路径和II.py
  • “结”构与解构.py
  • 根到叶的和.py
  • 字典树.py
  • 所有可能的满二叉树.py
  • 右边视角的二叉树.py
  • 完整二叉树插入.py
  • 根据中序和后序遍历结果中构建二叉树.py
  • 根据前序和中序遍历结果中构建二叉树.py
  • 一只二叉搜索树中第k小个数.py
  • 二叉搜索树中最小公共祖先.py
  • 二叉树中最小公共祖先.py
  • 为每个节点指定下一个右边指向.py
  • 为每个节点指定下一个右边指向II.py
  • “结”构与解构二叉树.py