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 公式的方式
- 下载源文件用支持 Latex 的编辑器(如 Typora)查看
- 在 Chrome 中使用第三方插件(如 MathJax Plugin for Github)后查看
面试题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
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