算法与数据结构
数据结构
算法
- nSum 问题:两数之和、三数之和等系列问题
- 字符串算法:字符串匹配、处理和转换等
- 数组去重:数组去重的多种实现
- 链表:链表操作、反转链表、环检测等
- 二叉树:树的遍历、路径求和、构建树等
- 排序算法:常见排序算法及其实现
- 二分查找:二分查找的实现及变体
- 滑动窗口:子串问题、最长无重复子串等
- 动态规划:DP 问题的思路与解法
- BFS:广度优先搜索及其应用
- DFS:深度优先搜索及其应用
- 回溯算法:排列、组合、子集等问题
- 背包问题:0-1 背包、完全背包等变体
- 编辑距离:字符串编辑距离问题
- 股票买卖:经典股票买卖问题的多种变体
- 图算法:图的遍历、最短路径等
- 贪心算法:活动选择、任务调度等
学习顺序
- 基础数据结构:链表、树、栈、队列、哈希表等
- 基本算法:排序、搜索、图遍历等
- 经典问题:股票买卖、数组去重、字符串匹配等
- 高级算法:动态规划、回溯算法、BFS/DFS 等
- 应用场景:字符串处理、数组操作、图处理等
学习技巧
- 理解基础数据结构:先掌握数组、链表、栈、队列、树等基础结构
- 分类学习:按照问题类型分类学习,掌握每类问题的解题模板
- 总结规律:相似问题往往有相似解法,善于归纳总结
- 刻意练习:对难点进行刻意练习,不断巩固