LeetCode
Algorithms
| # | 题名 | 难度 | 相关标签 |
|---|---|---|---|
| 1 | 两数之和 | 简单 | 数组 哈希表 |
| 2 | 两数相加 | 中等 | 链表 数学 |
| 3 | 无重复字符的最长子串 | 中等 | 哈希表 双指针 字符串 Sliding Window |
| 4 | 寻找两个有序数组的中位数 | 困难 | 数组 二分查找 分治算法 |
| 5 | 最长回文子串 | 中等 | 字符串 动态规划 |
| 6 | Z 字形变换 | 中等 | 字符串 |
| 7 | 整数反转 | 简单 | 数学 |
| 8 | 字符串转换整数(atoi) | 中等 | 数学 字符串 |
| 9 | 回文数 | 简单 | 数学 |
| 10 | 正则表达式匹配 | 困难 | 字符串 动态规划 回溯算法 |
| 11 | 盛最多水的容器 | 中等 | 数组 双指针 |
| 12 | 整数转罗马数字 | 中等 | 数学 字符串 |
| 13 | 罗马数字转整数 | 简单 | 数学 字符串 |
| 14 | 最长公共前缀 | 简单 | 字符串 |
| 15 | 三数之和 | 中等 | 数组 双指针 |
| 16 | 最接近的三数之和 | 中等 | 数组 双指针 |
| 17 | 电话号码的字母组合 | 中等 | 字符串 回溯算法 |
| 18 | 四数之和 | 中等 | 数组 哈希表 双指针 |
| 19 | 删除链表的倒数第N个节点 | 中等 | 链表 双指针 |
| 20 | 有效的括号 | 简单 | 栈 字符串 |
| 21 | 合并两个有序链表 | 简单 | 链表 |
| 22 | 括号生成 | 中等 | 字符串 回溯算法 |
| 23 | 合并K个排序链表 | 困难 | 堆 链表 分治算法 |
| 24 | 两两交换链表中的节点 | 中等 | 链表 |
| 25 | K 个一组翻转链表 | 困难 | 链表 |
| 26 | 删除排序数组中的重复项 | 简单 | 数组 双指针 |
| 27 | 移除元素 | 简单 | 数组 双指针 |
| 28 | 实现 strStr() | 简单 | 双指针 字符串 |
| 29 | 两数相除 | 中等 | 数学 二分查找 |
| 30 | 串联所有单词的子串 | 困难 | 哈希表 双指针 字符串 |
| 31 | 下一个排列 | 中等 | 数组 |
| 32 | 最长有效括号 | 困难 | 字符串 动态规划 |
| 33 | 搜索旋转排序数组 | 中等 | 数组 二分查找 |
| 34 | 在排序数组中查找元素的第一个… | 中等 | 数组 二分查找 |
| 35 | 搜索插入位置 | 简单 | 数组 二分查找 |
| 36 | 有效的数独 | 中等 | 哈希表 |
| 37 | 解数独 | 困难 | 哈希表 回溯算法 |
| 38 | 外观数列 | 简单 | 字符串 |
| 39 | 组合总和 | 中等 | 数组 回溯算法 |
| 40 | 组合总和 II | 中等 | 数组 回溯算法 |
| 41 | 缺失的第一个正数 | 困难 | 数组 |
| 42 | 接雨水 | 困难 | 栈 数组 双指针 |
| 43 | 字符串相乘 | 中等 | 数学 字符串 |
| 44 | 通配符匹配 | 困难 | 贪心算法 字符串 动态规划 回溯算法 |
| 45 | 跳跃游戏 II | 困难 | 贪心算法 数组 |
| 46 | 全排列 | 中等 | 回溯算法 |
| 47 | 全排列 II | 中等 | 回溯算法 |
| 48 | 旋转图像 | 中等 | 数组 |
| 49 | 字母异位词分组 | 中等 | 哈希表 字符串 |
| 50 | Pow(x, n) | 中等 | 数学 二分查找 |
| 53 | 最大子序和 | 简单 | 数组 分治算法 动态规划 |
| 54 | 螺旋矩阵 | 中等 | 数组 |
| 55 | 跳跃游戏 | 中等 | 贪心算法 数组 |
| 56 | 合并区间 | 中等 | 排序 数组 |
| 57 | 插入区间 | 困难 | 排序 数组 |
| 58 | 最后一个单词的长度 | 简单 | 字符串 |
| 86 | 分隔链表 | 中等 | 链表 双指针 |
| 94 | 二叉树的中序遍历 | 中等 | 栈 树 哈希表 |
| 96 | 不同的二叉搜索树 | 中等 | 树 动态规划 |
| 103 | 二叉树的锯齿形层次遍历 | 中等 | 栈 树 深度优先搜索 |
| 105 | 从前序与中序遍历序列构造… | 中等 | 树 深度优先搜索 数组 |
| 110 | 平衡二叉树 | 简单 | 树 深度优先搜索 |
| 114 | 二叉树展开为链表 | 中等 | 树 深度优先搜索 |
| 123 | 买卖股票的最佳时机 III | 困难 | 数组 动态规划 |
| 133 | 克隆图 | 中等 | 深度优先搜索 广度优先搜索 图 |
| 144 | 二叉树的前序遍历 | 中等 | 栈 树 |
| 145 | 二叉树的后序遍历 | 中等 | 栈 树 |
| 146 | LRU缓存机制 | 中等 | 设计 |
| 189 | 旋转数组 | 中等 | 数组 |
| 228 | 汇总区间 | 简单 | 数组 |
| 239 | 滑动窗口最大值 | 困难 | 堆 Sliding Window |
| 260 | 只出现一次的数字 III | 中等 | 位运算 |
| 264 | 丑数 II | 中等 | 堆 数学 动态规划 |
| 509 | 斐波那契数 | 简单 | 数组 |
| 547 | 省份数量 | 中等 | 深度优先搜索 并查集 |
| 605 | 种花问题 | 简单 | 贪心算法 数组 |
| 628 | 三个数的最大乘积 | 简单 | 数组 数字 |
| 643 | 子数组最大平均数 I | 简单 | 数组 |
| 665 | 非递减数列 | 简单 | 数组 |
| 674 | 最长连续递增序列 | 简单 | 数组 |
| 684 | 冗余连接 | 中等 | 树 并查集 图 |
| 721 | 账户合并 | 中等 | 深度优先搜索 并查集 |
| 724 | 寻找数组的中心索引 | 简单 | 数组 |
| 766 | 托普利茨矩阵 | 简单 | 数组 |
| 803 | 打砖块 | 困难 | 并查集 |
| 830 | 较大分组的位置 | 简单 | 数组 |
| 888 | 公平的糖果棒交换 | 简单 | 数组 |
| 918 | 环形子数组的最大和 | 中等 | 数组 |
| 947 | 移除最多的同行或同列石头 | 中等 | 深度优先搜索 并查集 |
| 959 | 由斜杠划分区域 | 中等 | 深度优先搜索 并查集 图 |
| 989 | 数组形式的整数加法 | 简单 | 数组 |
| 1018 | 可被 5 整除的二进制前缀 | 简单 | 数组 |
| 1128 | 等价多米诺骨牌对的数量 | 简单 | 数组 |
| 1232 | 缀点成线 | 简单 | 几何 数组 数学 |
| 1319 | 连通网络的操作次数 | 中等 | 深度优先搜索 广度优先搜索 并查集 |
| 1423 | 可获得的最大点数 | 中等 | 数组 动态规划 Sliding Window |
Database
| # | 题名 | 难度 |
|---|---|---|
| 175 | 组合两个表 | 简单 |
| 176 | 第二高的薪水 | 简单 |
| 177 | 第N高的薪水 | 中等 |
| 178 | 分数排名 | 中等 |
| 181 | 超过经理收入的员工 | 简单 |
| 182 | 查找重复的电子邮箱 | 简单 |
| 183 | 从不订购的客户 | 简单 |
| 184 | 部门工资最高的员工 | 中等 |
| 185 | 部门工资前三高的所有员工 | 困难 |
Concurrency
| # | 题名 | 难度 |
|---|---|---|
| 1114 | 按序打印 | 简单 |
| 1115 | 交替打印FooBar | 中等 |
| 1116 | 打印零与奇偶数 | 中等 |
剑指 Offer
| # | 题名 | 难度 | 相关标签 |
|---|---|---|---|
| 03 | 数组中重复的数字 | 简单 | 数组 哈希表 |
| 04 | 二维数组中的查找 | 简单 | 数组 双指针 |
| 05 | 替换空格 | 简单 | |
| 06 | 从尾到头打印链表 | 简单 | 链表 |
| 07 | 重建二叉树 | 中等 | 树 递归 |
| 09 | 用两个栈实现队列 | 简单 | 栈 设计 |
| 10-I | 斐波那契数列 | 简单 | 递归 |
| 10-II | 青蛙跳台阶问题 | 简单 | 递归 |
| 11 | 旋转数组的最小数字 | 简单 | 二分查找 |
| 12 | 矩阵中的路径 | 中等 | 深度优先搜索 |
| 14-I | 剪绳子 | 中等 | 数学 动态规划 |
| 14-II | 剪绳子 II | 中等 | 数学 动态规划 |
| 15 | 二进制中1的个数 | 简单 | 位运算 |
| 16 | 数值的整数次方 | 中等 | 递归 |
| 17 | 打印从1到最大的n位数 | 简单 | 数学 |
| 18 | 删除链表的节点 | 简单 | 链表 |
| 21 | 调整数组顺序使奇数位于偶数前面 | 简单 |