-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathrecord.txt
62 lines (58 loc) · 5.95 KB
/
record.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
P1(两数之和) --数组、哈希表
P2(两数相加) --递归、链表、数学
P3(无重复字符的最长子串) --哈希表、字符串、滑动窗口
P4(寻找两个正序数组的中位数) * --数组、二分查找、分治
P5(最长回文字串) * --字符串、动态规划
P6(Z字形变换) --字符串
P7(整数反转) --数学
P8(字符串转换整数(atoi)) --字符串
P9(回文数) --数学
P10(正则表达式匹配) ** --递归、字符串、动态规划
P11(盛水最多的容器) --贪心、数组、双指针 (随着第一个元素的递增,第二个元素是递减的,那么就可以使用双指针的方法)
P12(整数转罗马数字) --哈希表、数学、字符串
P13(罗马数字转整数) --哈希表、数学、字符串
P14(最长公共前缀) --字符串
P15(三数之和) --排序、数组、双指针、去重
P16(最接近的三数之和) --排序、数组、双指针、去重
P17(电话号码的数字组合) * --哈希表、字符串、回溯
P18(四数之和) --排序、数组、双指针
P19(删除链表的倒数第 N 个结点 --链表、双指针
P20(有效的括号) --字符串、栈
P21(合并两个有序链表) --链表、递归
P22(括号生成) * --字符串、动态规划、回溯
P23(合并K个升序链表) * --链表、分治、归并(排序)、优先队列
P24(两两交换链表中的节点) --链表、递归
P25(K 个一组翻转链表) --链表、递归
P26(删除有序数组中的重复项) --数组、双指针
P27(移除元素) --数组、双指针
P28(实现 strStr()) --双指针、字符串匹配
P29(两数相除) --位运算、数学
P30(串联所有单词的子串) ** --字符串、哈希表、滑动窗口
P31(下一个排列) ** --数组、双指针
P32(最长有效括号) ** --字符串、栈、动态规划 (取最值一般是通过坐标索引来相减得到,类似于P3、P5)
P33(搜索旋转排序数组) * --数组、二分查找
P34(在排序数组中查找元素的第一个和最后一个位置) * --数组、二分查找
P35(搜索插入位置) --数组、二分查找
P36(有效的数独) --数组、矩阵、哈希表
P37(解数独) * --数组、矩阵、回溯
P38(外观数列) --字符串、递归
P39(组合总和) --数组、回溯
P40(组合总和Ⅱ) --数组、回溯、去重
P41(缺失的第一个正数) * --数组、哈希表、*置换*
P42(接雨水) * --数组、双指针、动态规划、单调栈
P43(字符串相乘) --字符串、数学
P44(通配符匹配) --字符串、贪心、动态规划
P45(跳跃游戏 II) * --数组、贪心、动态规划
P46(全排列) --数组、回溯
P47(全排列 II) * --数组、回溯、去重
P48(旋转图像) --数组、数学、矩阵
P49(字母异位词分组) --字符串、哈希表、排序
P50(Pow(x, n)) * --递归、数学
P51(N皇后) --回溯
P52(N皇后 II) --回溯
P53(最大子序和) * --数组、分治、动态规划
P54(螺旋矩阵) * --数组、矩阵、模拟
P55(跳跃游戏) * --数组、贪心、动态规划
P56(合并区间) * --数组、排序
P57(插入区间) --数组
P1137(第 N 个泰波那契数) --数学、记忆搜索、动态规划