算法竞赛学习路线
算法竞赛学习路线
一、适合人群
- 准备蓝桥杯的同学;
- 准备程序设计竞赛的同学;
- 想提升编程思维和问题解决能力的同学。
二、学习阶段
阶段一:语言基础
建议掌握 C++,重点学习基础语法、函数、数组、字符串、结构体、STL。
阶段二:基础算法
枚举、模拟、排序、二分、前缀和、差分、双指针、贪心。
阶段三:数据结构
栈、队列、链表、哈希表、堆、并查集、树状数组、线段树基础。
阶段四:图论
DFS、BFS、最短路、最小生成树、拓扑排序、连通性问题。
阶段五:动态规划
线性 DP、背包 DP、区间 DP、树形 DP 入门、状态压缩 DP 入门。
三、训练方法
- 每周保持固定刷题量;
- 一题多解,理解不同方法;
- 写题解,记录思路;
- 定期参加模拟赛;
- 赛后复盘,不只看通过数量。