ACM常用算法及练习(2)
ACM常用算法及练习
知识类型 | 重要度 | 容易度 | 应掌握度 | 典型题 | 其他 | |
数据结构(5) | 链表 | ★★☆ | ★★★ | ★★☆ | ||
栈 stack | ★★★ | ★★★ | ★★★ | HLoj1207 | HDoj_1022 | |
队列 queue | ★★★ | ★★★ | ★★★ | |||
并查集 | ★★★ | ★★☆ | ★★★ | HDoj_1213 | HLoj1050 | |
二叉堆和优先队列 | ★★☆ | ★★★ | ★★☆ | HDoj_1873 | ||
二叉排序树 | ★☆☆ | ★★☆ | ★☆☆ | |||
字典树(Trie) | ★★☆ | ★☆☆ | ★☆☆ | HDoj_1251 | ||
线段树 | ★★☆ | ★☆☆ | ★★☆ | Zoj_1514 | Hdoj_1556 | |
Hash表 | ★★☆ | ★★☆ | ★★☆ | HDoj_1800 | HDoj_1880 | |
树状数组 | ★☆☆ | ★☆☆ | ★☆☆ | |||
STL(1) | Container | |||||
vector | ★★★ | ★★★ | ★★★ | |||
list | ★★☆ | ★★★ | ★★☆ | HLoj_1053 | ||
queue | ★★★ | ★★★ | ★★★ | |||
stack | ★★★ | ★★★ | ★★★ | HLoj1207 | HDoj_1022 | |
set | ★★☆ | ★★☆ | ★★☆ | Hdoj_1106, Hdoj_1412 | ||
map | ★★★ | ★☆☆ | ★★★ | HDoj_1800 | ||
Algorithm | ||||||
sort | ★★★ | ★★★ | ★★★ | |||
reverse | ★★★ | ★★★ | ★★★ | HDoj_1266 | ||
find | ★★☆ | ★☆☆ | ★★☆ | |||
max_element/min_element | ★★☆ | ★☆☆ | ★☆☆ | HDoj_2025 | ||
replace | ★★☆ | ★★☆ | ★☆☆ | Zoj_2741 | ||
数学(1) | 最大公约(最小公倍) | ★★★ | ★★★ | ★★★ | HDoj_1019 | |
扩展欧几里德算法 | ★☆☆ | ★☆☆ | ★☆☆ | HDoj_2669 | ||
素数判定(eratosthenes筛选法) | ★★★ | ★★★ | ★★★ | HLoj_1232 | HDoj_1262 | |
同余 | ★★☆ | ★★☆ | ★★☆ | HDoj_1420 | HDoj_1395 | |
利用log来降低计算难度 | ★☆☆ | ★★☆ | ★☆☆ | HDoj_1060 | ||
进制转换 | ★★★ | ★★★ | ★★★ | |||
高精度,大整数 | ★★★ | ★★☆ | ★★★ | |||
Fibonacci | ★★★ | ★★☆ | ★★★ | HDoj_2070 | HLoj_1020,HLoj_1186 | |
Catalan | ★★☆ | ★☆☆ | ★☆☆ | HDoj_1134 | ||
欧拉函数 | ★★☆ | ★☆☆ | ★☆☆ | HDoj_2824 | Hdoj_1787 | |
约瑟夫问题 | ★★☆ | ★★☆ | ★★☆ | HLoj_1185 | HDoj_2925 | |
stirling数 | ★☆☆ | ★☆☆ | ★☆☆ | HDoj_2512 | ||
图论(3) | 哈夫曼树,最优二叉树 | ★☆☆ | ★☆☆ | ★☆☆ | HDoj_1053 | |
图的表示 | ||||||
邻接矩阵 | ★★★ | ★★★ | ★★★ | |||
邻接表 | ★★☆ | ★★☆ | ★★☆ | |||
最短路径 | ||||||
Dijkstra | ★★★ | ★★☆ | ★★☆ | HDoj_1874 | ||
Floyd | ★★☆ | ★★★ | ★★☆ | HDoj_1869 | ||
最小生成树 | ||||||
Prim | ★★★ | ★★☆ | ★★★ | HLoj_1014 | HDoj_1102 | |
Kruscal | ★★★ | ★★☆ | ★★★ | HDoj_1232 | ||
图的遍历 | ||||||
连通图判断(BFS,DFS) | ★★★ | ★★☆ | ★★★ | HDoj_1878 | ||
其他 | ||||||
拓扑排序 | ★☆☆ | ★☆☆ | ★☆☆ | HDoj_1285 | ||
欧拉图(一笔画问题)判断 | ★★☆ | ★★☆ | ★★☆ | HDoj_1878 | ||
二部图与匈牙利算法最大独立集 | ★★☆ | ★☆☆ | ★★☆ | HDoj_1068 | ||
网络流(5) | ★☆☆ | ★☆☆ | ★☆☆ | |||
算法(2) | 递归和分治 | ★★☆ | ★★☆ | ★★☆ | Zoj2922 | Zoj2855 |
贪心算法 | ||||||
会场安排问题 | ★★☆ | ★★☆ | ★★☆ | HLoj_1203 | HDoj_2037 | |
不完全背包问题 | ★★★ | ★★★ | ★★★ | HDoj_1009 | ||
动态规划 | ||||||
1、最长上升子序列 LIS | ★★★ | ★★☆ | ★★★ | HDoj_1257 | HLoj_1064 | |
2、最长公共子序列 LCS | ★★★ | ★★☆ | ★★★ | HDoj_1159 | HDoj_3779 | |
3、递推 | ★★☆ | ★★☆ | ★★☆ | HLoj_1041 | HDoj_2044-2050 | |
4、母函数 | ★☆☆ | ★★☆ | ★☆☆ | HDoj_1171 | HDoj_1709 | |
5、数塔类 | ★★★ | ★★★ | ★★★ | HDoj_2084 | HDoj_1176 | |
6、最大子段类 | ★★★ | ★★☆ | ★★★ | |||
最大子段和 | ★★★ | ★★☆ | ★★★ | HDoj_1231 | HDoj_1422 | |
最大子阵和 | ★★★ | ★☆☆ | ★★☆ | HDoj_1559 | HDoj_1081 | |
最大m子段和 | ★☆☆ | ★☆☆ | ★☆☆ | HLoj_7011 | ||
7、背包问题 | ||||||
01背包,完全背包,多重背包 | ★★★ | ★★☆ | ★★★ | HLoj_1006 | HDoj_3732 | |
二维背包 | ★★★ | ★★☆ | ★★☆ | HLoj_1039 | HDoj_3496 | |
有依赖的背包 | ★★☆ | ★☆☆ | ★☆☆ | HLoj_1067 | ||
8、树形DP | ★★☆ | ★☆☆ | ★☆☆ | HDoj_1520 | ||
9、DP之备忘录,记忆化搜索 | ★★★ | ★★☆ | ★★☆ | Poj_1088 | HDoj_1078,HDoj_3779 | |
回溯DFS | ||||||
子集树 | ★★★ | ★★☆ | ★★★ | HLoj_1004 | ||
排列树 | ★★★ | ★★☆ | ★★☆ | HLoj_1004 | HLoj_1227,HDoj_1572 | |
分支限界BFS | ||||||
BFS | ★★★ | ★★☆ | ★★☆ | HDoj_1242 | HLoj_1241 | |
其他(1) | ||||||
找规律/周期 | ★★☆ | ★★☆ | ★★☆ | HDoj_1005 | HDoj_1061 | |
打表/备忘录方式 | ★☆☆ | ★★☆ | ★☆☆ | HDoj_2041 | HDoj_2212 | |
大整数处理(加,减,乘) | ★★★ | ★★★ | ★★★ | Hdoj_1592 | Hdoj_1316 | |
串流stringstream | ★★★ | ★★☆ | ★★★ | HDoj_2072 | ||
博弈 | ★☆☆ | ★☆☆ | ★☆☆ | |||
几何(1) | 叉积/面积 | 点/线/多边形 | ||||
基本形 | 两直线相交/两线段相交/点在任意多边形内的判定 | |||||
相关判定 | ||||||
凸包 |
未完待续~~~
ACM常用算法及练习(2)的更多相关文章
- ACM常用算法及练习(1)
ACM常用算法及练习 第一阶段:练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码,因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打出来. 1.最短 ...
- ACM常用算法
数据结构 栈,队列,链表 哈希表,哈希数组 堆,优先队列 双端队列 可并堆 左偏堆 二叉查找树 Treap 伸展树 并查集 集合计数问题 二分图的识别 平衡二叉树 二叉排序树 线段树 一维线段树 二维 ...
- 总结Objective-c常用算法
今天是星期天,想睡到10点起床,结果认为自己太奢侈了,不能这么做,于是把闹钟设置成了6:30:结果终于9:36醒了,起床,无缘无故迟了,好吧,就算太累了吧,周天就原谅自己一回.终于到了中午 ...
- Atitit 编程语言常用算法attilax总结
Atitit 编程语言常用算法attilax总结 1. 编译算法分类and 数据操作算法.1 1.1. Tab driver stat 状态转换表格算法1 1.2. Nest case 词法分析 ...
- GJM : 数据结构 - 轻松看懂机器学习十大常用算法 [转载]
转载请联系原文作者 需要获得授权,非法转载 原文作者将享受侵权诉讼 文/不会停的蜗牛(简书作者)原文链接:http://www.jianshu.com/p/55a67c12d3e9 通过本篇文章可以 ...
- acm常见算法及例题
转自:http://blog.csdn.net/hengjie2009/article/details/7540135 acm常见算法及例题 初期:一.基本算法: (1)枚举. (poj17 ...
- C/C++常用算法【C语言顺序查找(随机数)】【1】
这是我学习唐峻,李淳的<C/C++常用算法第一天> 1.8.1. 查找数字: 程序随机生成一个拥有20个整数数据的数组,然后输入要查找的数据.接着,可以采用醉简单的逐个对比的方法进行查找, ...
- Python之路,Day21 - 常用算法学习
Python之路,Day21 - 常用算法学习 本节内容 算法定义 时间复杂度 空间复杂度 常用算法实例 1.算法定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的 ...
- python 下的数据结构与算法---2:大O符号与常用算法和数据结构的复杂度速查表
目录: 一:大O记法 二:各函数高阶比较 三:常用算法和数据结构的复杂度速查表 四:常见的logn是怎么来的 一:大O记法 算法复杂度记法有很多种,其中最常用的就是Big O notation(大O记 ...
随机推荐
- ①spirngMVC框架运行原理图
- [daily][device][bluetooth] 蓝牙怎么办!(archlinux下驱动蓝牙鼠标,以及三星手机)
去年地摊买的破无线鼠标坏掉了.看上微软的Designer Mouse蓝牙鼠,但是买之前我要确认我能不能驱起来. 这款鼠标只支持蓝牙4.0.系统支持windows8以上,不支持xp和windows7. ...
- [收藏]Asp.net MVC生命周期
一个HTTP请求从IIS移交到Asp.net运行时,Asp.net MVC是在什么时机获得了控制权并对请求进行处理呢?处理过程又是怎样的? 以IIS7中asp.net应用程序生命周期为例,下图是来自M ...
- Android 环境快速搭建-详细步骤-win7-64bit
电脑装了win7 64位的系统,重新来搭建了安卓环境,发现有一种非常便捷,快速的方法就可以搭建起来了~ 步骤一:下载java sdk 进入http://www.oracle.com/us/sun/in ...
- new char[]和new char()的区别
new char[1];分配一块连续的内存,也就是一个数组,里面有1个元素new char(1);分配一块内存,有一个元素,该元素被初始化为1
- 对象(List<T>)的序列化和反序列化
本文描述将对象(List<T>)序列化到 XML 文档中和从 XML 文档中反序列化为对象(List<T>). 命名空间: System.Xml.Serialization 程 ...
- 实战案例:DIV嵌套
缘于页面结构语义化的考虑,我们应该慎用div和span这两个通用元素,只有当划分页面结构模块时才使用div元素,因为模块本身是没有任何语义的,他仅代表一块独立的结构.如果想对段落内部分内联元素或文本应 ...
- thinkphp接手机网站接口
首先说下,支付宝提供的demo不一定完全正确,可能回缺少些步骤,所以,最好按照规则文档的步骤参照demo写. 先说遇到的问题: 1.错误0001,缺少partner.service等必参数 最初选择的 ...
- 添加 Gradle 依赖与 build.gradle 配置初识
添加 Gradle 我们可以到我们添加 Maven 依赖的网站 Maven Repository: Search/Browse/Explore http://mvnrepository.com/ 上查 ...
- 简述Docker镜像、容器、仓库概念
Docker镜像 Docker镜像(Image)类似于虚拟机的镜像,可以将他理解为一个面向Docker引擎的只读模板,包含了文件系统. 例如:一个镜像可以完全包含了Ubuntu操作系统环境,可以把它称 ...