ACM的算法分类
来源:互联网 发布:数据库log文件太大 编辑:程序博客网 时间:2024/06/05 18:22
一.基本算法:
(1)枚举.
(2)贪心.
(3)递归和分治法.
(4)递推.
(5)构造法.
(6)模拟法.
(1)图的深度优先遍历和广度优先遍历.
(2)最短路径算法(dijkstra,bellman-ford,floyd,heap+dijkstra).
(3)最小生成树算法(prim,kruskal).
(4)拓扑排序.
(5)二分图的最大匹配 (匈牙利算法).
(6)最大流的增广路算法(KM算法).
(1)串.
(2)排序(快排、归并排(与逆序数有关)、堆排.
(3)简单并查集的应用.
(4)哈希表和二分查找等高效查找法(数的Hash,串的Hash).
(5)哈夫曼树.
(6)堆.
(7)trie树(静态建树、动态建树).
四.简单搜索
(1)深度优先搜索.
(2)广度优先搜索.
(3)简单搜索技巧和剪枝.
五.动态规划
(1)背包问题.
(2)型如下表的简单DP:
1.E[j]=opt{D[i]+w(i,j)}
2.E[i,j]=opt{D[i-1,j]+xi,D[i,j-1]+yj,D[i-1][j-1]+zij} (最长公共子序列)3.C[i,j]=w[i,j]+opt{C[i,k-1]+C[k,j]}.(最优二分检索树问题)
六.数学
2.排列组合.
1.素数与整除问题
3.同余模运算.
(3)计算方法.
1.二分法求解单调函数相关知识.
(1)几何公式.
(2)叉积和点积的运用(如线段相交的判定,点到线段的距离等).
(3)多边型的简单算法(求面积)和相关判定(点在多边型内,多边型是否相交)
(4)凸包.
一.基本算法:
(2)较为复杂的模拟题的训练.
二.图算法:
(2)最小费用最大流.
(3)双连通分量.(4)强连通分支及其缩点.
(5)图的割边和割点.(6)最小割模型、网络流规约.
(1)线段树.
(2)静态二叉检索树.
(4)RMQ.
(6)KMP算法.
(1)最优化剪枝和可行性剪枝.
(2)搜索的技巧和优化.
(3)记忆化搜索.五.动态规划
(2)记录状态的动态规划.
(3)树型动态规划.
(1)组合数学:
3.置换群与Polya定理.
4.递推关系和母函数.
(2)数学.
1.高斯消元法.
2.概率问题.
3.GCD、扩展的欧几里德(中国剩余定理).
(3)计算方法.1.0/1分数规划.
3.矩阵法
4.迭代逼近
(4)随机化算法(5)杂题.
(1)坐标离散化.
(3)多边形的内核(半平面交).
(4)几何工具的综合应用.
高级:
一.基本算法要求:
(2)保证正确性和高效性.
二.图算法:
(2)最短路,最小生成树,二分图,最大流问题的相关理论(主要是模型建立和求解).
(3)最优比率生成树.
(5)次小生成树.
三.数据结构.
(2)LCA和RMQ问题(LCA(最近公共祖先问题) 有离线算法(并查集+dfs) 和 在线算法
(4)左偏树(可合并堆).
(1)较麻烦的搜索题目训练.
(2)广搜的状态优化:利用M进制数存储状态、转化为串用hash表判重、按位压缩存储状态、双向广搜、A*算法.
五.动态规划
(2)四边形不等式理论.
(1)组合数学.
2.偏序关系理论.
1.极大极小过程.
2.Nim问题.
(1)半平面求交.
(2)可视图的建立.
(4)对踵点
- ACM的算法分类
- ACM的算法分类
- ACM的算法分类
- ACM的算法分类
- ACM的算法分类
- ACM的算法分类
- ACM的算法分类(ZZ)
- ACM的算法分类(poj)
- 我的最近acm算法分类
- acm的算法(分类及练习题)
- acm算法分类
- ACM常见算法分类
- ACM算法分类
- ACM 题型算法分类
- ACM算法分类
- ACM常见算法分类
- acm算法分类
- ACM算法分类
- 模式识别 学习笔记:第九章 非监督模式识别
- Android学习总结2
- 2015南阳CCPC部分题目代码
- 从技术经理的角度算一算,如何可以多快好省的做个app
- 在自己网站添加百度搜索
- ACM的算法分类
- [LintCode] Coins in a line II
- unity3d中的欧拉角
- ios开发---音乐播放器之怎么获取音乐列表
- 百度地图最简单的完成接口,和实例代码
- C++面向对象操作符重载:输入输出操作符
- 因为我们是OIER
- fragment获取context
- Android之倒计时实现