一下是推荐的题目,覆盖大部分知识点
1.排序算法:
- 快速排序:912. Sort an Array
- 归并排序:88. Merge Sorted Array
2.搜索算法:
3.动态规划:
- 记忆化搜索:322. Coin Change
- 状态转移方程:70. Climbing Stairs
- 背包问题:416. Partition Equal Subset Sum
- 最长公共子序列:1143. Longest Common Subsequence
4.图算法:
- 最短路径问题:743. Network Delay Time
- 最小生成树:958. Check Completeness of a Binary Tree(虽然不是最小生成树,但可以使用类似算法)
- 图的遍历:207. Course Schedule
5.贪心算法:
- 活动选择问题:455. Assign Cookies
- 区间调度问题:435. Non-overlapping Intervals
- 最小硬币找零问题:322. Coin Change
6.分治算法:
7.字符串算法:
- KMP算法:28. Implement strStr()
- Rabin-Karp算法:3. Longest Substring Without Repeating Characters
8.几何算法:
9.数论算法:
- 最大公约数:204. Count Primes
- 素数筛法:204. Count Primes
10.数据结构:
- 栈:155. Min Stack
- 队列:225. Implement Stack using Queues
- 链表:206. Reverse Linked List
- 树:144. Binary Tree Preorder Traversal
- 图:207. Course Schedule
- 哈希表:1. Two Sum
- 堆:215. Kth Largest Element in an Array
多做点好啊 ^^:
1.双指针:
- 滑动窗口问题:15. 3Sum
- 快慢指针问题:141. Linked List Cycle
2.二分搜索:
- 寻找满足特定条件的最小或最大值:34. Find First and Last Position of Element in Sorted Array
3.深度优先搜索(DFS):
4.广度优先搜索(BFS):
5.动态规划:
- 子序列问题:53. Maximum Subarray
- 计数问题:120. Triangle
- 区间问题:64. Minimum Path Sum