这是我的Leetcode算法题解代码仓。一边练习一边学习,刷题同时记录笔记。使用JS语言。
如果对代码仓有任何问题,欢迎联系我:)
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|---|---|---|---|---|---|
1 | two-sum | 1. 两数之和 | main.js | README.md | 对撞指针/查找表 | easy |
3 | longest-substring-without-repeating-characters | 3. 无重复字符的最长子串 | main.js | README.md | 双指针维护滑动窗口 | medium |
11 | container-with-most-water | 11. 盛最多水的容器 | main.js | README.md | 双指针 | medium |
15 | 3sum | 15. 三数之和 | main.js | README.md | map映射 | medium |
16 | 3sum-closest | 16. 最接近的三数之和 | main.js | README.md | 排序+双指针 | medium |
18 | 4sum | 18.四数之和 | main.js | README.md | 排序+双指针 | medium |
19 | remove-nth-node-from-end-of-list | 19. 删除链表的倒数第 N 个结点 | main.js | README.md | 链表 | medium |
20 | valid-parentheses | 20. 有效的括号 | main.js | README.md | 栈 | easy |
23 | merge-k-sorted-lists | 23. 合并K个升序链表 | hard | |||
24 | swap-nodes-in-pairs | 24. 两两交换链表中的节点 | main.js | README.md | 链表 | medium |
26 | remove-duplicates-from-sorted-array | 26. 删除有序数组中的重复项 | main.js | README.md | 双指针 | easy |
27 | remove-element | 27.移除元素 | main1.js | README.md | 双指针 | easy |
43 | multiply-strings | 43. 字符串相乘 | ||||
49 | group-anagrams | 49. 字母异位词分组 | main.js | README.md | 排序+双指针 | medium |
70 | climbing-stairs | 70. 爬楼梯 | main.js | README.md | 动态规划 | easy |
75 | sort-colors | 75. 颜色分类 | main1.js | README.md | 计数排序/三路快排partition | medium |
76 | minimum-window-substring | 76. 最小覆盖子串 | main.js | README.md | 双指针+map | hard |
80 | remove-duplicates-from-sorted-array-ii | 80. 删除有序数组中的重复项 II | main.js | README.md | 双指针 | medium |
88 | merge-sorted-array | 88. 合并两个有序数组 | main.js | README.md | 双指针 | easy |
92 | reverse-linked-list-ii | 92. 反转链表 II | main.js | README.md | 链表 | medium |
98 | validate-binary-search-tree | 98. 验证二叉搜索树 | main.js | README.md | 递归判断 | medium |
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|---|---|---|---|---|---|
102 | binary-tree-level-order-traversal | 102. 二叉树的层序遍历 | main.js | README.md | BFS | medium |
125 | valid-palindrome | 125. 验证回文串 | main.js | README.md | 对撞指针 | easy |
144 | binary-tree-preorder-traversal | 144. 二叉树的前序遍历 | main.js | README.md | 迭代 | medium |
167 | two-sum-ii-input-array-is-sorted | 167. 两数之和 II - 输入有序数组 | main.js | README.md | 二分搜索/对撞指针 | easy |
198 | house-robber | 198. 打家劫舍 | main.js | README.md | 动态规划 | medium |
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|---|---|---|---|---|---|
202 | two-sum | 202. 快乐数 | main1.js | README.md | 哈希表 | easy |
203 | remove-linked-list-elements | 203. 移除链表元素 | main.js | README.md | 链表 | easy |
205 | isomorphic-strings | 205. 同构字符串 | main.js | README.md | map映射 | easy |
206 | reverse-linked-list | 206. 反转链表 | main.js | README.md | 链表 | easy |
209 | minimum-size-subarray-sum | 209.长度最小的子数组 | main.js | README.md | 滑动窗口 | medium |
215 | kth-largest-element-in-an-array | 215. 数组中的第K个最大元素 | main.js | RAEDME.md | 暴力解/堆/快速选择 | medium |
219 | contains-duplicate-ii | 219. 存在重复元素 II | main.js | README.md | set | easy |
220 | contains-duplicate-iii | 220. 存在重复元素 III | main.java | README.md | 滑动窗口+treeset | medium |
235 | lowest-common-ancestor-of-a-binary-search-tree | 235. 二叉搜索树的最近公共祖先 | main.js | README.md | 递归 | easy |
242 | valid-anagram | 242. 有效的字母异位词 | main.js | README.md | 线性比较/哈希 | easy |
257 | binary-tree-paths | 257. 二叉树的所有路径 | main.js | README.md | 递归 | easy |
283 | move-zeroes | 283.移动零 | main1.js | README.md | 数组 | easy |
290 | word-pattern | 290. 单词规律 | main.js | README.md | map映射 | easy |
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 |
---|---|---|---|---|---|
344 | reverse-string | 344. 反转字符串 | main.js | README.md | 对撞指针 |
345 | reverse-vowels-of-a-string | 345. 反转字符串中的元音字母 | main.js | README.md | 对撞指针 |
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|---|---|---|---|---|---|
415 | add-strings | 415. 字符串相加 | main.js | README.md | 模拟竖式加法 | easy |
417 | pacific-atlantic-water-flow | 417. 太平洋大西洋水流问题 | main.js | README.md | DFS | medium |
438 | find-all-anagrams-in-a-string | 438. 找到字符串中所有字母异位词 | main.js | README.md | 在滑动窗口中作记录 | medium |
447 | number-of-boomerangs | 447. 回旋镖的数量 | main.js | README.md | map | medium |
451 | sort-characters-by-frequency | 451.根据字符出现频率排序 | main.js | README.md | map | medium |
454 | 4sum-ii | 454. 四数相加 II | main.js | README.md | 查找表map | medium |
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|
ID | Problem | 中文地址 | JS | 解题笔记 | 核心思想 | 难度 |
---|---|---|---|---|---|---|
933 | number-of-recent-calls | 933. 最近的请求次数 | mains.js | README.md | 队列模拟 | easy |