Skip to content

ZhipingLi/LeetCode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 

Repository files navigation

LeetCode

Personal experience of rushing LeetCode~ 😎

Learning and inspired from @labuladong!! 👍


Directory structure

/examples
|
|
|
+---BFS算法
|   +---BFS
|   |   +---111. 二叉树的最小深度
|   |   \---752. 打开转盘锁
|   \---BFS:寻路搜索
|       \---773. 滑动谜题
+---DFS算法、回溯算法
|   +---DFS:岛屿问题
|   |   +---1020. 飞地的数量
|   |   +---1254. 统计封闭岛屿的数目
|   |   +---1905. 统计子岛屿
|   |   +---200. 岛屿数量
|   |   +---694. 不同岛屿的数量
|   |   \---695. 岛屿的最大面积
|   +---回溯算法
|   |   +---46. 全排列
|   |   \---51. N 皇后
|   +---回溯算法:子集、排列、组合问题
|   |   +---39. 组合总和
|   |   +---40. 组合总和 II
|   |   +---46. 全排列
|   |   +---47. 全排列 II
|   |   +---77. 组合
|   |   +---78. 子集
|   |   +---90. 子集 II
|   |   +---总结
|   |   \---排列(元素无重可复选)
|   \---回溯算法:集合划分问题
|       \---698. 划分为k个相等的子集
+---二叉搜索树
|   +---二叉搜索子树的最大键值和
|   |   \---1373. 二叉搜索子树的最大键值和
|   +---二叉搜索树 I
|   |   +---1038. 从二叉搜索树到更大和树(同538)
|   |   +---230. 二叉搜索树中第K小的元素
|   |   \---538. 把二叉搜索树转换为累加树
|   +---二叉搜索树 II
|   |   +---450. 删除二叉搜索树中的节点
|   |   +---700. 二叉搜索树中的搜索
|   |   +---701. 二叉搜索树中的插入操作
|   |   \---98. 验证二叉搜索树
|   \---二叉搜索树 III
|       +---95. 不同的二叉搜索树 II
|       \---96. 不同的二叉搜索树
+---二叉树
|   +---二叉树 I
|   |   +---114. Flatten Binary Tree to Linked List
|   |   +---116. Populating Next Right Pointers in Each Node
|   |   \---226. Invert Binary Tree
|   +---二叉树 II
|   |   +---105. Construct Binary Tree from Preorder and Inorder Traversal
|   |   +---106. Construct Binary Tree from Inorder and Postorder Traversal
|   |   \---654. Maximum Binary Tree
|   +---二叉树 III
|   |   \---652. Find Duplicate Subtrees
|   +---二叉树序列化
|   |   \---297. 二叉树的序列化与反序列化
|   \---二叉树总结篇
|       +---104. 二叉树的最大深度
|       +---144. 二叉树的前序遍历
|       \---543. 二叉树的直径
+---动态规划
|   +---动态规划核心原理
|   |   +---初识动态规划
|   |   |   +---322. 零钱兑换
|   |   |   \---509. 斐波那契数
|   |   +---动态规划:dp函数解法和dp数组解法
|   |   |   \---931. 下降路径最小和
|   |   \---动态规划:最优子结构和dp数组遍历
|   +---动态规划玩游戏
|   |   +---加权最短路径
|   |   |   \---787. K站中转内最便宜的航班
|   |   +---博弈问题
|   |   |   +---877. 石子游戏
|   |   |   \---石子游戏改进
|   |   +---圆盘问题
|   |   |   \---514. 自由之路
|   |   +---地下城问题
|   |   |   \---174. 地下城游戏
|   |   +---打家劫舍问题
|   |   |   +---198. 打家劫舍
|   |   |   +---213. 打家劫舍 II
|   |   |   \---337. 打家劫舍 III
|   |   +---最小路径和
|   |   |   \---64. 最小路径和
|   |   +---股票买卖问题
|   |   |   +---121. 买卖股票的最佳时机
|   |   |   +---122. 买卖股票的最佳时机 II
|   |   |   +---123. 买卖股票的最佳时机 III
|   |   |   +---188. 买卖股票的最佳时机 IV
|   |   |   +---309. 最佳买卖股票时机含冷冻期
|   |   |   \---714. 买卖股票的最佳时机含手续费
|   |   \---高楼扔鸡蛋
|   |       \---887. 鸡蛋掉落
|   +---经典动态规划
|   |   +---最大子数组和问题
|   |   |   \---53. 最大子数组和
|   |   +---最长公共子序列 (Longest Common Subsequence)
|   |   |   +---1143. 最长公共子序列
|   |   |   +---583. 两个字符串的删除操作
|   |   |   \---712. 两个字符串的最小ASCII删除和
|   |   +---最长递增子序列 (Longest Incresing Subsequence)
|   |   |   \---300. 最长递增子序列
|   |   +---正则表达式问题
|   |   |   \---10. 正则表达式匹配
|   |   \---编辑距离问题
|   |       \---72. 编辑距离
|   \---背包问题
|       +---0-1背包问题
|       |   \---0-1背包问题
|       +---子集背包问题
|       |   \---416. 分割等和子集
|       \---完全背包问题
|           \---518. 零钱兑换 II
+---图论
|   +---Dijkstra算法
|   |   +---1514. 概率最大的路径
|   |   +---1631. 最小体力消耗路径
|   |   \---743. 网络延迟时间
|   +---Kruskal最小生成树算法
|   |   +---1135. 最低成本联通所有城市
|   |   +---1584. 连接所有点的最小费用
|   |   \---261. 以图判树
|   +---Union-Find算法应用
|   |   +---130. 被围绕的区域
|   |   \---990. 等式方程的可满足性
|   +---Union-Find(并查集算法)
|   |   \---323. 无向图中连通分量的数目
|   +---二分图判定
|   |   +---785. 判断二分图
|   |   \---886. 可能的二分法
|   +---名流问题
|   |   \---277. 搜索名人
|   +---图论基础
|   |   \---797. 所有可能的路径
|   \---拓扑排序
|       +---207. 课程表
|       \---210. 课程表 II
+---数学算法
|   +---吃葡萄
|   |   \---牛客:吃葡萄
|   +---同时寻找缺失和重复元素
|   |   \---645. 错误的集合
|   +---寻找素数
|   |   \---204. 计数质数
|   +---无限序列中随机抽取元素
|   |   +---382. 链表随机节点
|   |   \---398. 随机数索引
|   \---阶乘后的零
|       +---172. 阶乘后的零
|       \---793. 阶乘函数后 K 个零
+---数据结构设计
|   +---LFU (Least Frequently Used cache)
|   |   \---460. LFU Cache
|   +---LRU (Least Recently Used cache)
|   |   \---146. LRU Cache
|   +---大顶堆和小顶堆
|   |   \---295. Find Median from Data Stream
|   \---常数时间查找、删除数组元素
|       +---380. Insert Delete GetRandom O(1)
|       \---710. Random Pick with Blacklist
+---数组、链表
|   +---二分搜索
|   |   +---34. Find First and Last Position of Element in Sorted Array
|   |   \---704. Binary Search
|   +---二分搜索单调函数
|   |   +---1011. Capacity To Ship Packages Within D Days
|   |   +---410. 分割数组的最大值
|   |   \---875. Koko Eating Bananas
|   +---前缀和数组
|   |   +---303. Range Sum Query - Immutable
|   |   +---304. Range Sum Query 2D - Immutable
|   |   \---560. Subarray Sum Equals K
|   +---单链表
|   |   +---141. Linked List Cycle
|   |   +---142. Linked List Cycle II
|   |   +---160. Intersection of Two Linked Lists
|   |   +---19. Remove Nth Node From End of List
|   |   +---21. Merge Two Sorted Lists
|   |   +---23. Merge k Sorted Lists
|   |   \---876. Middle of the Linked List
|   +---原地修改数组
|   |   +---26. Remove Duplicates from Sorted Array
|   |   +---27. Remove Element
|   |   +---283. Move Zeroes
|   |   \---83. Remove Duplicates from Sorted List
|   +---差分数组
|   |   +---1094. Car Pooling
|   |   +---1109. Corporate Flight Bookings
|   |   \---307. Range Sum Query - Mutable
|   +---滑动窗?算法
|   |   +---3. Longest Substring Without Repeating Characters
|   |   +---438. Find All Anagrams in a String
|   |   +---567. Permutation in String
|   |   \---76. Minimum Window Substring
|   +---田忌赛马优势洗牌
|   |   \---870. Advantage Shuffle
|   \---链表递归操作
|       +---206. Reverse Linked List
|       \---92. Reverse Linked List II
+---队列、栈
|   +---下一个更大元素题目(单调栈)
|   |   +---496. Next Greater Element I
|   |   +---503. Next Greater Element II
|   |   \---739. Daily Temperatures
|   +---单调栈解决数组去重
|   |   +---1081. Smallest Subsequence of Distinct Characters
|   |   \---316. Remove Duplicate Letters
|   +---单调队列
|   |   \---239. Sliding Window Maximum
|   +---括号题目
|   |   +---1541. Minimum Insertions to Balance a Parentheses String
|   |   +---20. Valid Parentheses
|   |   \---921. Minimum Add to Make Parentheses Valid
|   \---队列与栈的相互实现
|       +---225. Implement Stack using Queues
|       \---232. Implement Queue using Stacks
\---面试必知必会
    +---nSum问题
    |   +---1. 两数之和
    |   +---15. 三数之和
    |   \---18. 四数之和
    +---分治算法
    |   \---241. 为运算表达式设计优先级
    +---区间问题
    |   +---1288. 删除被覆盖区间
    |   +---253. 会议室II
    |   +---56. 合并区间
    |   \---986. 区间列表的交集
    +---完美矩形
    |   \---391. 完美矩形
    +---快速选择算法(Quick Select)
    |   \---215. 数组中的第K个最大元素
    +---斗地主
    |   \---659. 分割数组为连续子序列
    +---计算器实现
    |   +---224. 基本计算器
    |   +---227. 基本计算器 II
    |   \---772. 基本计算器 III
    \---贪心算法
        +---1024. 视频拼接
        \---134. 加油站

About

Personal experience of rushing LeetCode~ 😎

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published