第一阶段:
经典常用算法,下面的算法要打上十到二十遍,同时自己精简代码。
1.二分查找
2.大数加减乘除
3.最小生成树(kruscal、prim)
4.最短路(floyd、dijstra、bellmanford)
5.bfs、dfs、hash表
6.任意进制间的转换
7.sort、qsort
8.辗转相除、线段交点、多边形面积公式
9.叉乘,判断线段相交凸包
第二阶段:
1.并查集
2.二分图匹配
3.线段树
4.网络流、最小费用流
5.动态规划典型:lcs、最长递增子串、三角剖分、记忆化dp
6.博弈类算法:博弈树、二进制法
7.最大团、最大独立集
8.判断点在多边形内
9.差分约束系统
10.双向广度搜索、a*算法、最小耗散优先
第三阶段:
参加一些比赛,查漏补缺。