在努力更新中ヾ(◍°∇°◍)ノ゙
题号 | 题名 | 考点 | 题解 | 难度 |
1 | 两数之和 | hash | C++/Python | 简单 |
2 | 两数相加 | 链表 | C++/Python | 中等 |
3 | 无重复字符的最长子串 | 双指针+hash | C++/Python | 中等 |
4 | 寻找两个有序数组的中位数 | 二分法 | C++/Python | 困难 |
5 | 最长回文子串 | Manacher/中心扩展/动态规划 | C++/Python | 中等 |
6 | Z 字形变换 | 数学问题 | C++/Python | 中等 |
7 | 整数反转 | 溢出 | C++/Python | 简单 |
8 | 字符串转换整数 (atoi) | 字符串处理 | C++/Python | 中等 |
9 | 回文数 | 水题 | C++/Python | 简单 |
10 | 正则表达式匹配 | 动态规划 | C++/Python | 困难 |
11 | 盛最多水的容器 | 双指针 | C++/Python | 中等 |
12 | 整数转罗马数字 | 字符串 | C++/Python | 中等 |
13 | 罗马数字转整数 | 字符串 | C++/Python | 简单 |
14 | 最长公共前缀 | 字符串 | C++/Python | 简单 |
15 | 三数之和 | 双指针 | C++/Python | 中等 |
16 | 最接近的三数之和 | 双指针 | C++/Python | 中等 |
17 | 电话号码的字母组合 | 组合 | C++/Python | 中等 |
18 | 四数之和 | 双指针 | C++/Python | 中等 |
19 | 删除链表的倒数第N个节点 | 双指针 | C++/Python | 中等 |
20 | 有效的括号 | 栈 | C++/Python | 简单 |
21 | 合并两个有序链表 | 链表 | C++/Python | 简单 |
22 | 括号生成 | 回溯剪枝 | C++/Python | 中等 |
23 | 合并K个排序链表 | 归并排序 | C++/Python | 困难 |
24 | 两两交换链表中的节点 | 链表 | C++/Python | 中等 |
25 | k个一组翻转链表 | 链表 | C++/Python | 困难 |
26 | 删除排序数组中的重复项 | 链表 | C++/Python | 简单 |
27 | 移除元素 | 水题 | C++/Python | 简单 |
28 | 实现strStr() | KMP/Byore Moore/库函数 | C++/Python | 简单 |
29 | 两数相除 | 溢出 | C++/Python | 中等 |
30 | 串联所有单词的子串 | C++ | 困难 | |
31 | 下一个排列 | 排列 | C++/Python | 中等 |
32 | 最长有效括号 | 栈/动态规划 | C++/Python | 困难 |
33 | 搜索旋转排序数组 | 二分法 | C++/Python | 中等 |
34 | 在排序数组中查找元素的第一个和最后一个位置 | 二分法 | C++/Python | 中等 |
35 | 搜索插入位置 | 二分法 | C++/Python | 简单 |
36 | 有效的数独 | 水题 | C++/Python | 中等 |
37 | 解数独 | C++ | 困难 | |
38 | 报数 | 递归 | C++/Python | 简单 |
39 | 组合总和 | 回溯剪枝 | C++/Python | 中等 |
40 | 组合总和 II | 回溯剪枝 | C++/Python | 中等 |
41 | 缺失的第一个正数 | 排序 | C++/Python | 困难 |
42 | 接雨水 | C++ | 困难 | |
43 | 字符串相乘 | 字符串 | C++ | 中等 |
44 | 通配符匹配 | 动态规划 | C++ | 困难 |
45 | 跳跃游戏 II | 动态规划 | C++ | 困难 |
46 | 全排列 | 排列 | C++ | 中等 |
47 | 全排列 II | 排列 | C++ | 中等 |
48 | 旋转图像 | 模拟 | C++ | 中等 |
49 | 字母异位词分组 | map | C++ | 中等 |
50 | Pow(x, n) | 二分法 | C++ | 中等 |
51 | N皇后 | 回溯剪枝 | C++ | 困难 |
52 | N皇后 II | 回溯剪枝 | C++ | 困难 |
53 | 最大子序和 | 贪心 | C++ | 简单 |
54 | 螺旋矩阵 | 中等模拟 | C++ | 中等 |
55 | 跳跃游戏 | 动态规划 | C++ | 中等 |
56 | 合并区间 | 贪心 | C++ | 中等 |
57 | 插入区间 | 贪心 | C++ | 困难 |
58 | 最后一个单词的长度 | 水题 | C++ | 简单 |
59 | 螺旋矩阵 II | 中等模拟 | C++ | 中等 |
60 | 第k个排列 | 数学问题 | C++ | 中等 |
61 | 旋转链表 | 二分法 | C++ | 中等 |
62 | 不同路径 | 数学问题 | C++ | 中等 |
63 | 不同路径 II | 动态规划 | C++ | 中等 |
64 | 最小路径和 | 动态规划 | C++ | 中等 |
65 | 有效数字 | 字符串 | C++ | 困难 |
66 | 加一 | 进位 | C++ | 简单 |
67 | 二进制求和 | 位运算 | C++ | 简单 |
68 | 文本左右对齐 | C++ | 困难 | |
69 | x 的平方根 | 二分法 | C++ | 简单 |
70 | 爬楼梯 | 斐波拉切数列 | C++ | 简单 |
71 | 简化路径 | 字符串 | C++ | 中等 |
72 | 编辑距离 | C++ | 困难 | |
73 | 矩阵置零 | 水题 | C++ | 中等 |
74 | 搜索二维矩阵 | 二分法 | C++ | 中等 |
75 | 颜色分类 | Hash | C++ | 中等 |
76 | 最小覆盖子串 | C++ | 困难 | |
77 | 组合 | 回溯剪枝 | C++ | 中等 |
78 | 子集 | 回溯剪枝/二进制法 | C++ | 中等 |
79 | 单词搜索 | 递归 | C++ | 中等 |
80 | 删除排序数组中的重复项 II | 链表 | C++ | 中等 |
81 | 搜索旋转排序数组 II | 二分法 | C++ | 中等 |
82 | 删除排序链表中的重复元素 II | 双指针法 | C++ | 中等 |
83 | 删除排序链表中的重复元素 | 双指针法 | C++ | 简单 |
84 | 柱状图中最大的矩形 | 递增栈 | C++ | 困难 |
85 | 最大矩形 | C++ | 困难 | |
86 | 分隔链表 | 双指针法 | C++ | 中等 |
87 | 扰乱字符串 | C++ | 困难 | |
88 | 合并两个有序数组 | 双指针法 | C++ | 简单 |
89 | 格雷编码 | 位运算 | C++ | 中等 |
90 | 子集 II | 子集 | C++ | 中等 |
91 | 解码方法 | 动态规划 | C++ | 中等 |
92 | 反转链表 II | 双指针法 | C++ | 中等 |
93 | 复原IP地址 | 回溯剪枝 | C++ | 中等 |
94 | 二叉树的中序遍历 | 中序遍历 | C++ | 中等 |
95 | 不同的二叉搜索树 II | 递归 | C++ | 中等 |
96 | 不同的二叉搜索树 | 动态规划 | C++ | 中等 |
97 | 交错字符串 | 动态规划 | C++ | 困难 |
98 | 验证二叉搜索树 | 中序遍历 | C++ | 中等 |
99 | 恢复二叉搜索树 | 树的遍历 | C++ | 困难 |
100 | 相同的树 | 递归 | C++ | 简单 |