Skip to content

RickeyBoy/LeetCodeGists

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LeetCodeGists

Rickey's Roadmap

我的分类笔记和刷题路径

算法笔记

KMP Algorithm - 字符串匹配 (eg. 28)

Manacher Algorithm - 最长回文串 (eg. 5)

特征根求解线性递推方程

Binary Exponentiation - 快速幂 (eg. 50)

Morris Traversal - 莫里斯遍历 (eg. 144, 94, 145)

Monotonic Stack - 单调栈 (eg. 42,84,85)

Topological sorting - 拓扑排序(eg. 207,210)

Boyer-Moore Voting Algorithm - 摩尔投票算法(eg. 169, 229)

Bezouts lemma - 裴蜀定理(eg. 365)

注:在 Github Readme 中查看 Latex 公式的方式

  1. 下载源文件用支持 Latex 的编辑器(如 Typora)查看
  2. 在 Chrome 中使用第三方插件(如 MathJax Plugin for Github)后查看

代码模板

Quick Select 快速选择算法

Palindrome - 回文串判定

Trie 字典树

Binary Count 1 二进制数中 1 的个数

剑指 offer 解题记录

面试题03. 数组中重复的数字 - easy

面试题04. 二维数组中的查找 - easy(与 240 题相同)

面试题05. 替换空格 - easy

面试题06. 从尾到头打印链表 - easy

面试题07. 重建二叉树 - medium(与 105 题相同)

面试题09. 用两个栈实现队列 - easy

面试题10- I. 斐波那契数列 - easy

面试题10- II. 青蛙跳台阶问题 - easy

面试题11. 旋转数组的最小数字 - easy(与 154 题相同)

面试题12. 矩阵中的路径 - easy(与 79 题相同)

面试题13. 机器人的运动范围 - medium(与 79 题相同)

面试题14- I. 剪绳子 - medium(与 343 题相同)

面试题14- II. 剪绳子 II - medium

面试题15. 二进制中1的个数 - easy(与 191 题相同)

面试题16. 数值的整数次方 - medium(与 50 题相同)

面试题17. 打印从1到最大的n位数 - easy

面试题18. 删除链表的节点 - easy

面试题19. 正则表达式匹配 - hard(与 10 题相同)

面试题20. 表示数值的字符串 - medium(与 65 题相同)

面试题21. 调整数组顺序使奇数位于偶数前面 - easy

面试题22. 链表中倒数第k个节点 - easy

面试题24. 反转链表 - easy(与 206 题相同)

面试题25. 合并两个排序的链表 - easy(与 21 题相同)

面试题26. 树的子结构 - medium

剑指 Offer 27. 二叉树的镜像 - easy(与 226 题相同)

剑指 Offer 28. 对称的二叉树 - easy(与 101 题相同)

面试题29. 顺时针打印矩阵 - easy(与 54 题相同)

剑指 Offer 30. 包含min函数的栈 - easy(与 155 题相同)

剑指 Offer 31. 栈的压入、弹出序列 - medium(与 946 题相同)

剑指 Offer 32 - I. 从上到下打印二叉树 - medium

面试题62. 圆圈中最后剩下的数字 - easy(约瑟夫环)

程序员面试金典 解题记录

面试题 01.06. 字符串压缩 - easy

面试题 01.07. 旋转矩阵 - medium

面试题 04.06. 后继者 - medium

面试题 10.01. 合并排序的数组 - easy(与 343 题相同)

面试题 16.11. 跳水板 - easy

面试题 17.16. 按摩师 - easy

面试题46. 把数字翻译成字符串 - medium

面试题64. 求1+2+…+n - medium

LeetCode 解题记录

1. Two Sum 两数之和 - easy

2. Add Two Numbers 两数相加 - medium

3. Longest Substring Without Repeating Characters 无重复字符的最长子串 - medium

4. Median of Two Sorted Arrays 寻找两个有序数组的中位数 - hard

5. Longest Palindromic Substring 最长回文子串 - medium

6. ZigZag Conversion Z字形变换 - medium

7. Reverse Integer 整数反转 - easy

8. String to Integer (atoi) 字符串转换整数 (atoi) - medium

9. Palindrome Number 回文数 - easy

10. Regular Expression Matching 正则表达式的匹配 - hard

11. Container With Most Water 盛最多水的容器 - medium

13. Roman to Integer 罗马数字转整数 - easy

14. Longest Common Prefix 最长公共前缀 - easy

15. 3Sum 三数之和 - medium

16. 3Sum Closest 最接近的三数之和 - medium

17. Letter Combinations of a Phone Number 电话号码的字母组合 - medium

18. 4Sum 四数之和 - medium

19. Remove Nth Node From End of List 删除链表的倒数第N个节点 - medium

20. Valid Parentheses 有效的括号 - easy

21. Merge Two Sorted Lists 合并两个有序数列 - easy

22. Generate Parentheses 括号生成 - medium

23. Merge k Sorted Lists 合并K个排序链表 - hard

24. Swap Nodes in Pairs 两两交换链表中的节点 - medium

26. Remove Duplicates from Sorted Array 删除排序数组中的重复项 - easy

27. Remove Element 移除元素 - easy

28. Implement strStr() 实现 strStr() - easy

31. Next Permutation 下一个排列 - medium

32. Longest Valid Parentheses 最长有效括号 - hard

33. Search in Rotated Sorted Array 搜索旋转排序数组 - medium

34. Find First and Last Position of Element in Sorted Array 在排序数组中查找元素的第一个和最后一个位置 - medium

35. Search Insert Position 搜索插入的位置 - easy

36. Valid Sudoku 有效的数独 - medium

39. Combination Sum 组合总和 - medium

40. Combination Sum II 组合总和 II - medium

41. First Missing Positive 缺失的第一个正数 - hard

42. Trapping Rain Water 接雨水 - hard

44. Wildcard Matching 通配符匹配 - hard

46. Permutations 全排列 - medium

48. Rotate Image 旋转图像 - medium

50. Pow(x,n) - medium

51. N-Queens - hard

52. N-QueensII - hard

53. Maximum Subarray 最大子序和 - easy

54. Spiral Matrix 螺旋矩阵 - medium

55. Jump Game 跳跃游戏 - medium

57. Insert Interval 插入区间 - hard

59. Spiral Matrix II 螺旋矩阵 II - medium

62. Unique Paths 不同路径 - medium

63. Unique Paths II 不同路径 II - medium

64. Minimum Path Sum 最小路径和 - medium

65. Valid Number 有效数字 - hard

66. Plus One 加一 - easy

69. Sqrt(x) x 的平方根 - easy

70. Climbing Stairs 爬楼梯 - easy

72. Edit Distance 编辑距离 - hard

73. Set Matrix Zeroes 矩阵置零 - medium

76. Minimum Window Substring 最小覆盖子串 - hard

78. Subsets 子集 - medium

79. Word Search 单词搜索 - medium

84. Largest Rectangle in Histogram 柱状图中最大的矩形 - hard

85. Maximal Rectangle 最大矩形 - hard

88. Merge Sorted Array 合并两个有序数组 - easy

92. Reverse Linked List II 反转链表 II - medium

94. Binary Tree Inorder Traversal 二叉树的中序遍历 - medium

98. Validate Binary Search Tree 验证二叉搜索树 - medium

100. Same Tree 相同的树 - easy

101. Symmetric Tree 对称二叉树 - easy

102. Binary Tree Level Order Traversal 二叉树的层次遍历 - medium

103. Binary Tree Zigzag Level Order Traversal 二叉树的锯齿形层序遍历 - medium

104. Maximum Depth of Binary Tree 二叉树的最大深度 - easy

105. Construct Binary Tree from Preorder and Inorder Traversal 从前序与中序遍历序列构造二叉树 - medium

106. Construct Binary Tree from Inorder and Postorder Traversal 从中序与后序遍历序列构造二叉树 - medium

112. Path Sum 路径总和 - easy

114. Flatten Binary Tree to Linked List 二叉树展开为链表 - medium

118. Pascal's Triangle 杨辉三角 - easy

120. Triangle 三角形最小路径和 - medium

121. Best Time to Buy and Sell Stock 买卖股票的最佳时机 - easy

122. Best Time to Buy and Sell Stock II 买卖股票的最佳时机 II - easy

123. Best Time to Buy and Sell Stock III 买卖股票的最佳时机 III - hard

129. Sum Root to Leaf Numbers 求根到叶子节点数字之和 - medium

130. Surrounded Regions 被围绕的区域 - medium

131. Palindrome Partitioning 分割回文串 - medium

132. Palindrome Partitioning II 分割回文串II - hard

134. Gas Station 加油站 - medium

136. Single Number 只出现一次的数字 - easy

139. Word Break 单词拆分 - medium

140. Word Break II 单词拆分 II - medium

141. Linked List Cycle 环形链表 - easy

142. Linked List Cycle II 环形链表 II - medium

144. Binary Tree Preorder Traversal 二叉树的前序遍历 - medium

145. Binary Tree Postorder Traversal 二叉树的后序遍历 - hard

146. LRU Cache LRU 缓存机制 - medium

147. Insertion Sort List 对链表进行插入排序 - medium

153. Find Minimum in Rotated Sorted Array 寻找旋转排序数组中的最小值 - medium

154. Find Minimum in Rotated Sorted Array II 寻找旋转排序数组中的最小值 II - hard

155. Min Stack 最小栈 - easy

160. Intersection of Two Linked Lists 相交链表 - easy

167. Two Sum II - Input array is sorted 两数之和 II - 输入有序数组 - easy

169. Majority Element 多数元素 - easy

188. Best Time to Buy and Sell Stock IV 买卖股票的最佳时机 IV - hard

189. Rotate Array 旋转数组 - medium

191. Number of 1 Bits 位1的个数 - easy

198. House Robber 打家劫舍 - easy

200. Number of Islands 岛屿数量 - medium

202. Happy Number 快乐数 - easy

206. Reverse Linked List 反转链表 - easy

207. Course Schedule 课程表 - medium

208. Implement Trie (Prefix Tree) 实现 Trie (前缀树) - medium

210. Course Schedule II 课程表 II - medium

211. Design Add and Search Words Data Structure 添加与搜索单词 - 数据结构设计 - medium

213. House Robber II 打家劫舍 II - easy

215. Kth Largest Element in an Array 数组中的第 K 个最大元素 - medium

216. Combination Sum III 组合总和 III - medium

225. Implement Stack using Queues 用队列实现栈 - easy

226. Invert Binary Tree 翻转二叉树 - easy

228. Summary Ranges 汇总区间 - easy

229. Majority Element II 求众数 II - medium

236. Lowest Common Ancestor of a Binary Tree 二叉树的最近公共祖先 - medium

238. Product of Array Except Self 除自身以外数组的乘积 - medium

240. Search a 2D Matrix II 搜索二维矩阵 II - medium

264. Ugly Number II 丑数 II - medium

278. First Bad Version 第一个错误的版本 - easy

279. Perfect Squares 完全平方数 - medium

283. Move Zeroes 移动零 - easy

301. Remove Invalid Parentheses 删除无效的括号 - hard

303. Range Sum Query - Immutable 区域和检索 - 数组不可变 - easy

304. Range Sum Query 2D - Immutable 二维区域和检索 - 矩阵不可变 - medium

309. Best Time to Buy and Sell Stock with Cooldown 最佳买卖股票时机含冷冻期 - medium

310. Minimum Height Trees 最小高度树 - medium

322. Coin Change 零钱兑换 - medium

337. House Robber III 打家劫舍 - medium

343. Integer Break 整数拆分 - medium

349. Intersection of Two Arrays 两个数组的交集 - easy

365. Water and Jug Problem 水壶问题 - easy

380. Insert Delete Get Random O(1) O(1) 时间插入、删除和获取随机元素 - medium

389. Find the Difference 找不同 - easy

392. Is Subsequence 判断子序列 - easy

399. Evaluate Division 除法求值 - medium

409. Longest Palindrome 最长回文串 - easy

416. Partition Equal Subset Sum 分割等和子集 - medium

415. Add Strings 字符串相加 - easy

438. Find All Anagrams in a String 找到字符串中所有字母异位词 - medium

445. Add Two Numbers II 两数相加 II - medium

453. Minimum Moves to Equal Array Elements 最小操作次数使数组元素相等 - easy

454. 4 Sum II 四数相加 II - medium

459. Repeated Substring Pattern 重复字符串 - easy

474. Ones and Zeroes 一和零 - medium

494. Target Sum 目标和 - medium

509. Fibonacci Number 斐波那契数 - easy

516. Longest Palindromic Subsequence 最长回文子序列 - medium

518. Coin Change 2 零钱兑换 II - medium

525. Contiguous Array 连续数组 - medium

543. Diameter of Binary Tree 二叉树的直径 - easy

547. Number of Provinces 省份数量 - medium

567. Permutation in String 字符串的排列 - medium

572. Subtree of Another Tree 另一个树的子树 - easy

614. Freedom Trail 自由之路 - hard

617. Merge Two Binary Trees 合并二叉树 - easy

643. Maximum Average Subarray I 子数组最大平均数 I - easy

664. Strange Printer 奇怪的打印机 - hard

674. Longest Continuous Increasing Subsequence 最长连续递增序列 - easy

680. Valid Palindrome II 验证回文字符串 Ⅱ - easy

684. Redundant Connection 冗余连接 - medium

695. Max Area of Island 岛屿的最大面积 - medium

704. binary Search 二分查找 - easy

714. Best Time to Buy and Sell Stock with Transaction Fee 买卖股票的最佳时机含手续费 - medium

724. Find Pivot Index 寻找数组的中心索引 - easy

739. Daily Temperatures 每日温度 - medium

746. Min Cost Climbing Stairs 使用最小花费爬楼梯 - easy

765. Couples Holding Hands 情侣牵手 - hard

785. Is Graph Bipartite? 判断二分图 - medium

791. Custom Sort String 自定义字符串排序 - medium

830. Positions of Large Groups 较大分组的位置 - easy

837. New 21 Game 新 21 点 - medium

841. Keys and Rooms 钥匙和房间 - medium

852. Peak Index in a Mountain Array 山脉数组的峰顶索引 - easy

876. Middle of the Linked List 链表的中间结点 - easy

877. Stone Game 石头游戏 - medium

887. Super Egg Drop 鸡蛋掉落 - hard

889. Construct Binary Tree from Preorder and Postorder Traversal 根据前序和后序遍历构造二叉树 - medium

922. Sort Array By Parity II 按奇偶排序数组 II - easy

941. Valid Mountain Array 有效的山脉数组 - easy

946. Validate Stack Sequences 验证栈序列 - medium

959. Regions Cut By Slashes 由斜杠划分区域 - medium

967. Numbers With Same Consecutive Differences 连续差相同的数字 - medium

973. K Closest Points to Origin 最接近原点的 K 个点 - medium

977. Squares of a Sorted Array 有序数组的平方 - medium

990. Satisfiability of Equality Equations 等式方程的可满足性 - medium

992. Subarrays with K Different Integers K 个不同整数的子数组 - hard

994. Rotting Oranges 腐烂的橘子 - easy

1018. Binary Prefix Divisible By 5 可被 5 整除的二进制前缀 - easy

1103. Distribute Candies to People 分糖果 II - easy

1013. Partition Array Into Three Parts With Equal Sum 将数组分成和相等的三个部分 - easy

1035. Uncrossed Lines 不相交的线 - medium

1046. Last Stone Weight 最后一块儿石头的重量 - easy

1049. Last Stone Weight II 最后一块儿石头的重量 II - medium

1071. Greatest Common Divisor of Strings 字符串的最大公因子 - easy

1128. Number of Equivalent Domino Pairs 等价多米诺骨牌对的数量 - easy

1143. Longest Common Subsequence 最长公共子序列 - medium

1160. Find Words That Can Be Formed by Characters 拼写单词 - easy

1252. Cells with Odd Values in a Matrix 奇数值单元格的数目 - easy

1267. Count Servers that Communicate 统计参与通信的服务器 - medium

1310. XOR Queries of a Subarray 子数组异或查询 - medium

1326. Minimum Number of Taps to Open to Water a Garden 灌溉花园的最少水龙头数目 - hard

1356. Sort Integers by The Number of 1 Bits 根据数字二进制下 1 的数目排序 - easy

1431. Kids With the Greatest Number of Candies 拥有最多糖果的孩子 - easy

1579. Remove Max Number of Edges to Keep Graph Fully Traversable 保证图可完全遍历 - hard

1662. Check If Two String Arrays are Equivalent 检查两个字符串数组是否相等 - easy

About

All about LeetCode. Hope this one live longer.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published