My solution to LeetCode problems using Golang
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
11 | Container With Most Water | 盛最多水的容器 | Medium | Solved |
15 | 3Sum | 三数之和 | Medium | Solved |
16 | 3Sum Closest | 最接近的三数之和 | Medium | Solved |
18 | 4Sum | 四数之和 | Medium | Solved |
26 | Remove Duplicates from Sorted Array | 删除有序数组中的重复项 | Easy | Solved |
27 | Remove Element | 移除元素 | Easy | Solved |
31 | Next Permutation | 下一个排列 | Medium | Solved |
75 | Sort Colors | 颜色分类 | Medium | Solved |
80 | Remove Duplicates from Sorted Array II | 删除有序数组中的重复项 II | Medium | Solved |
88 | Merge Sorted Array | 合并两个有序数组 | Easy | Solved |
215 | Kth Largest Element in an Array | 数组中的第K个最大元素 | Medium | Todo |
217 | Contains Duplicate | 存在重复元素 | Easy | Solved |
283 | Move Zeroes | 移动零 | Easy | Solved |
347 | Top K Frequent Elements | 前 K 个高频元素 | Medium | Solved |
offer 04 | 二维数组中的查找 | 二维数组中的查找 | Medium | Solved |
offer 17 | 打印从1到最大的n位数 | 打印从1到最大的n位数 | Easy | Solved |
offer 29 | 顺时针打印矩阵 | 顺时针打印矩阵 | Easy | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
3 | Longest Substring Without Repeating Characters | 无重复字符的最长子串 | Medium | Solved |
76 | Minimum Window Substring | 最小覆盖子串 | Hard | Solved |
239 | Sliding Window Maximum | 滑动窗口最大值 | Hard | Solved |
424 | Longest Repeating Character Replacement | 替换后的最长重复字符 | Hard | Solved |
offer 48 | 最长不含重复字符的子字符串 | 最长不含重复字符的子字符串 | Medium | Todo |
offer 59-I | 滑动窗口的最大值 | 滑动窗口的最大值 | Hard | Todo |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
5 | Longest Palindromic Substring | 最长回文子串 | Medium | Solved |
8 | String to Integer (atoi) | 字符串转换整数 (atoi) | Medium | Solved |
151 | Reverse Words in a String | 翻转字符串里的单词 | Medium | Solved |
offer 05 | 替换空格 | 替换空格 | Easy | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
56 | Merge Intervals | 合并区间 | Medium | Solved |
148 | Sort List | 排序链表 | Medium | Solved |
179 | Largest Number | 最大数 | Medium | Solved |
327 | Count of Range Sum | 区间和的个数 | Medium | Solved |
853 | Car Fleet | 车队 | Medium | Solved |
912 | Sort an Array | 排序数组 | Medium | Solved |
offer 51 | 数组中的逆序对 | 数组中的逆序对 | Hard | Solved |
interview 17.14 | 最小K个数 | 最小K个数 | Medium | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
207 | Course Schedule | 课程表 | Medium | Solved |
210 | Course Schedule II | 课程表 II | Medium | Solved |
329 | Longest Increasing Path in a Matrix | 矩阵中的最长递增路径 | Hard | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
164 | Maximum Gap | 最大间距 | Hard | Solved |
451 | Sort Characters By Frequency | 根据字符出现频率排序 | Medium | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
20 | Valid Parentheses | 有效的括号 | Easy | Solved |
42 | Trapping Rain Water | 接雨水 | hard | Todo |
167 | Two Sum II - Input array is sorted | 两数之和 II - 输入有序数组 | Easy | Solved |
189 | Rotate Array | 旋转数组 | Medium | Solved |
283 | Move Zeroes | 移动零 | Easy | Todo |
344 | Reverse String | 反转字符串 | Easy | Solved |
392 | Is Subsequence | 判断子序列 | Easy | Solved |
541 | Reverse String II | 反转字符串 II | Easy | Solved |
557 | Reverse Words in a String III | 反转字符串中的单词 III | Easy | Solved |
977 | Squares of a Sorted Array | 有序数组的平方 | Easy | Solved |
offer 21 | 调整数组顺序使奇数位于偶数前面 | 调整数组顺序使奇数位于偶数前面 | Easy | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
523 | Continuous Subarray Sum | 连续的子数组和 | Medium | Todo |
560 | Subarray Sum Equals K | 和为K的子数组 | Medium | Solved |
724 | Find Pivot Index | 寻找数组的中心下标 | Easy | Solved |
974 | Subarray Sums Divisible by K | 和可被 K 整除的子数组 | Medium | Todo |
1248 | Count Number of Nice Subarrays | 统计「优美子数组」 | Medium | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
2 | Add Two Numbers | 两数相加 | Medium | Solved |
19 | Remove Nth Node From End of List | 删除链表的倒数第 N 个 | Medium | Solved |
21 | Merge Two Sorted Lists | 合并两个有序链表 | Easy | Solved |
23 | Merge k Sorted Lists | 合并 K 个升序链表 | Hard | Solved |
24 | Swap Nodes in Pairs | 两两交换链表中的节点 | Medium | Solved |
25 | Reverse Nodes in k-Group | K 个一组翻转链表 | Medium | Solved |
61 | Rotate List | 旋转链表 | Medium | Solved |
83 | Remove Duplicates from Sorted List | 删除排序链表中的重复元素 | Easy | Solved |
86 | Partition List | 分隔链表 | Medium | Solved |
92 | Reverse Linked List II | 反转链表 II | Medium | Solved |
141 | Linked List Cycle | 环形链表 | Easy | Solved |
143 | Reorder List | 重排链表 | Medium | Solved |
147 | Insertion Sort List | 对链表进行插入排序 | Medium | Solved |
148 | Sort List | 排序链表 | Medium | Solved |
203 | Remove Linked List Elements | 移除链表元素 | Easy | Solved |
206 | Reverse Linked List | 反转链表 | Easy | Solved |
234 | Palindrome Linked List | 回文链表 | Easy | Todo |
237 | Delete Node in a Linked List | 删除链表中的节点 | Easy | Solved |
328 | Odd Even Linked List | 奇偶链表 | Medium | Todo |
445 | Add Two Numbers II | 两数相加 II | Medium | Todo |
876 | Middle of the Linked List | 链表的中间结点 | Easy | Solved |
offer 06 | 从尾到头打印链表 | 从尾到头打印链表 | Easy | Solved |
offer 18 | 删除链表的节点 | 删除链表的节点 | Easy | Solved |
offer 22 | 链表中倒数第k个节点 | 链表中倒数第k个节点 | Easy | Solved |
offer 24 | 反转链表 | 反转链表 | Easy | Solved |
offer 25 | 合并两个排序的链表 | 合并两个排序的链表 | Easy | Solved |
offer 35 | 复杂链表的复制 | 复杂链表的复制 | Medium | Solved |
NC 78 | 反转链表 | 反转链表 | Easy | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
94 | Binary Tree Inorder Traversal | 二叉树的中序遍历 | Medium | Solved |
102 | Binary Tree Level Order Traversal | 二叉树的层序遍历 | Medium | Solved |
105 | Construct Binary Tree from Preorder and Inorder Traversal | 从前序与中序遍历序列构造二叉树 | Medium | Solved |
107 | Binary Tree Level Order Traversal II | 二叉树的层序遍历 II | Medium | Solved |
114 | Flatten Binary Tree to Linked List | 二叉树展开为链表 | Medium | Solved |
116 | Populating Next Right Pointers in Each Node | 填充每个节点的下一个右侧节点指针 | Medium | Todo |
144 | Binary Tree Preorder Traversal | 二叉树的前序遍历 | Medium | Solved |
145 | Binary Tree Postorder Traversal | 二叉树的后序遍历 | Medium | Solved |
226 | Invert Binary Tree | 翻转二叉树 | Easy | Solved |
236 | Lowest Common Ancestor of a Binary Tree | 二叉树的最近公共祖先 | Medium | Solved |
297 | Serialize and Deserialize Binary Tree | 二叉树的序列化与反序列化 | Hard | Todo |
offer 07 | 重建二叉树 | 重建二叉树 | Medium | Solved |
offer 68-II | 二叉树的最近公共祖先 | 二叉树的最近公共祖先 | Easy | Todo |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
4 | Median of Two Sorted Arrays | 寻找两个正序数组的中位数 | Hard | Solved |
29 | Divide Two Integers | 两数相除 | Medium | Solved |
33 | Search in Rotated Sorted Array | 搜索旋转排序数组 | Medium | Solved |
34 | Find First and Last Position of Element in Sorted Array | 在排序数组中查找元素的第一个和最后一个位置 | Medium | Solved |
35 | Search Insert Position | 搜索插入位置 | Easy | Solved |
50 | Pow(x, n) | Pow(x, n) | Medium | Solved |
69 | Sqrt(x) | x 的平方根 | Easy | Solved |
81 | Search in Rotated Sorted Array II | 搜索旋转排序数组 II | Medium | Solved |
103 | Binary Tree Zigzag Level Order Traversal | 二叉树的锯齿形层序遍历 | Medium | Todo |
153 | Find Minimum in Rotated Sorted Array | 寻找旋转排序数组中的最小值 | Medium | Solved |
154 | Find Minimum in Rotated Sorted Array II | 寻找旋转排序数组中的最小值 II | Hard | Solved |
235 | Lowest Common Ancestor of a Binary Search Tree | 二叉搜索树的最近公共祖先 | Easy | Todo |
270 | Closest Binary Search Tree Value | 最接近的二叉搜索树值 | Easy | Solved |
278 | First Bad Version | 第一个错误的版本 | Easy | Solved |
378 | Kth Smallest Element in a Sorted Matrix | 有序矩阵中第 K 小的元素 | Medium | Todo |
392 | Is Subsequence | 判断子序列 | Easy | Solved |
475 | Heaters | 供暖器 | Medium | Solved |
704 | Binary Search | 二分查找 | Easy | Solved |
offer 11 | 旋转数组的最小数字 | 旋转数组的最小数字 | Easy | Solved |
offer 68-I | 二叉搜索树的最近公共祖先 | 二叉搜索树的最近公共祖先 | Easy | Todo |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
20 | Valid Parentheses | 有效的括号 | Easy | Solved |
42 | Trapping Rain Water | 接雨水 | hard | Todo |
71 | Simplify Path | 简化路径 | Medium | Solved |
150 | Evaluate Reverse Polish Notation | 逆波兰表达式求值 | Medium | Solved |
155 | Min Stack | 最小栈 | Easy | Solved |
225 | Implement Stack using Queues | 用队列实现栈 | Easy | Solved |
232 | Implement Queue using Stacks | 用栈实现队列 | Easy | Solved |
224 | Basic Calculator | 基本计算器 | Hard | Todo |
227 | Basic Calculator II | 基本计算器 II | Medium | Solved |
394 | Decode String | 字符串解码 | Medium | Todo |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
215 | Kth Largest Element in an Array | 数组中的第K个最大元素 | Medium | Solved |
692 | Top K Frequent Words | 前K个高频单词 | Medium | Solved |
703 | Kth Largest Element in a Stream | 数据流中的第 K 大元素 | Easy | Solved |
1046 | Last Stone Weight | 最后一块石头的重量 | Easy | Todo |
Offer 40 | 最小的k个数 | 最小的k个数 | Easy | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
1 | Two Sum | 两数之和 | Easy | Solved |
13 | Roman to Integer | 罗马数字转整数 | Easy | Solved |
41 | First Missing Positive | 缺失的第一个正数 | Hard | Solved |
128 | Longest Consecutive Sequence | 最长连续序列 | Medium | Solved |
349 | Intersection of Two Arrays | 两个数组的交集 | Easy | Solved |
350 | Intersection of Two Arrays II | 两个数组的交集 II | Easy | Solved |
451 | Sort Characters By Frequency | 根据字符出现频率排序 | Medium | Solved |
454 | 4Sum II | 四数相加 II | Medium | Todo |
781 | Rabbits in Forest | 森林中的兔子 | Medium | Solved |
1178 | Number of Valid Words for Each Puzzle | 猜字谜 | Hard | Todo |
1442 | Count Triplets That Can Form Two Arrays of Equal XOR | 形成两个异或相等数组的三元组数目 | Medium | Todo |
Offer 03 | 数组中重复的数字 | 数组中重复的数字 | Easy | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
200 | Number of Islands | 岛屿数量 | Medium | Solved |
547 | Number of Provinces | 省份数量 | Medium | Solved |
695 | Max Area of Island | 岛屿的最大面积 | Medium | Solved |
815 | Bus Routes | 公交路线 | Hard | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
200 | Number of Islands | 岛屿数量 | Medium | Todo |
547 | Number of Provinces | 省份数量 | Medium | Solved |
695 | Max Area of Island | 岛屿的最大面积 | Medium | Todo |
721 | Accounts Merge | 账户合并 | Medium | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
42 | Trapping Rain Water | 接雨水 | Hard | Solved |
53 | Maximum Subarray | 最大子序和 | Easy | Solved |
70 | Climbing Stairs | 爬楼梯 | Easy | Solved |
121 | Best Time to Buy and Sell Stock | 买卖股票的最佳时机 | Easy | Solved |
122 | Best Time to Buy and Sell Stock II | 买卖股票的最佳时机 II | Easy | Solved |
123 | Best Time to Buy and Sell Stock II | 买卖股票的最佳时机 III | Hard | Solved |
188 | Best Time to Buy and Sell Stock IV | 买卖股票的最佳时机 IV | Hard | Solved |
198 | House Robber | 打家劫舍 | Easy | Solved |
213 | House Robber II | 打家劫舍 II | Medium | Solved |
300 | Longest Increasing Subsequence | 最长递增子序列 | Medium | Solved |
303 | Range Sum Query - Immutable | 区域和检索 - 数组不可变 | Easy | Solved |
322 | Coin Change | 零钱兑换 | Medium | Solved |
337 | House Robber III | 打家劫舍 III | Medium | Solved |
392 | Is Subsequence | 判断子序列 | Easy | Solved |
509 | Fibonacci Number | 斐波那契数 | Easy | Solved |
746 | Min Cost Climbing Stairs | 使用最小花费爬楼梯 | Easy | Solved |
1025 | Divisor Game | 除数博弈 | Easy | Todo |
1137 | N-th Tribonacci Number | 第 N 个泰波那契数 | Easy | Solved |
offer 09 | 用两个栈实现队列 | 用两个栈实现队列 | Easy | Solved |
offer 10-I | 斐波那契数列 | 斐波那契数列 | Easy | Solved |
offer 10-II | 青蛙跳台阶问题 | 青蛙跳台阶问题 | Easy | Solved |
offer 09 | 用两个栈实现队列 | 用两个栈实现队列 | Easy | Solved |
offer 30 | 包含min函数的栈 | 包含min函数的栈 | Easy | Solved |
offer 63 | 股票的最大利润 | 股票的最大利润 | Medium | Solved |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
45 | Jump Game II | 跳跃游戏 II | Medium | Solved |
55 | Jump Game | 跳跃游戏 | Medium | Solved |
122 | Best Time to Buy and Sell Stock II | 买卖股票的最佳时机 II | Easy | Solved |
300 | Longest Increasing Subsequence | 最长递增子序列 | Medium | Solved |
376 | Wiggle Subsequence | 摆动序列 | Medium | Solved |
392 | Is Subsequence | 判断子序列 | Easy | Solved |
435 | Non-overlapping Intervals | 无重叠区间 | Medium | Todo |
452 | Minimum Number of Arrows to Burst Balloons | 用最少数量的箭引爆气球 | Medium | Todo |
455 | Assign Cookies | 分发饼干 | Easy | Solved |
605 | Can Place Flowers | 种花问题 | Easy | Todo |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
17 | Letter Combinations of a Phone Number | 电话号码的字母组合 | Medium | Solved |
22 | Generate Parentheses | 括号生成 | Medium | Solved |
37 | Sudoku Solver | 解数独 | Hard | Solved |
46 | Permutations | 全排列 | Medium | Solved |
47 | Permutations II | 全排列 II | Medium | Solved |
51 | N-Queens | N 皇后 | Hard | Solved |
52 | N-Queens II | N 皇后 II | Hard | Solved |
77 | Combinations | 组合 | Medium | Solved |
78 | Subsets | 子集 | Medium | Solved |
79 | Word Search | 单词搜索 | Medium | Todo |
90 | Subsets II | 子集 II | Medium | Solved |
93 | Restore IP Addresses | 复原 IP 地址 | Medium | Todo |
131 | Palindrome Partitioning | 分割回文串 | Medium | Todo |
offer 12 | 矩阵中的路径 | 矩阵中的路径 | Medium | Todo |
offer 38 | 字符串的排列 | 字符串的排列 | Medium | Todo |
NC 20 | 数字字符串转化成IP地址 | 数字字符串转化成IP地址 | Medium | Todo |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
208 | Implement Trie (Prefix Tree) | 实现 Trie (前缀树) | Medium | Solved |
211 | Design Add and Search Words Data Structure | 添加与搜索单词 - 数据结构设计 | Medium | Todo |
212 | Word Search II | 单词搜索 II | Medium | Todo |
336 | Palindrome Pairs | 回文对 | Medium | Todo |
421 | Maximum XOR of Two Numbers in an Array | 数组中两个数的最大异或值 | Medium | Solved |
648 | Replace Words | 单词替换 | Medium | Todo |
677 | Map Sum Pairs | 键值映射 | Medium | Solved |
720 | Longest Word in Dictionary | 词典中最长的单词 | Easy | Solved |
820 | Short Encoding of Words | 单词的压缩编码 | Medium | Todo |
No | Title | 题名 | Difficulty | Status |
---|---|---|---|---|
146 | LRU Cache | LRU 缓存机制 | Medium | Solved |
460 | LFU Cache | LFU 缓存机制 | Hard | Solved |
interview 16.25 | LRU 缓存 | LRU 缓存 | Medium | Solved |