![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
资料
focus_best
这个作者很懒,什么都没留下…
展开
-
后缀数组
后缀数组 要学习后缀数组的各种用法需要看刘汝佳的训练指南P219部分并且看罗穗骞论文《后缀数组——处理字符串的有力工具》.下面给出我的后缀数组模板:#include#include#includeusing namespace std;const int maxn = 100000 + 100; //既要大于字符串的长度,也要大于基数排序m的大小struct Su原创 2014-04-16 17:24:21 · 854 阅读 · 0 评论 -
扩展KMP
扩展KMP(下面讨论的所有串的起点都是从0开始计数的)扩展kmp既是求模式串和主串的每一个后缀的最长公共前缀即令s[i]表示主串中以第i个位置为起始的后缀,则B[i]表示s[i]和模式串的最长公共前缀显然KMP是求s[i]=模式串长度的情况,所以,扩展KMP是对KMP的拓展像求KMP的next数组一样,我们先求A[i],表示模式串(以第i个位置起始)的后缀和模式串的最长公共前缀原创 2014-04-05 15:02:34 · 791 阅读 · 0 评论 -
Bellman_Ford算法->SPFA算法
Bellman_Ford算法->SPFA算法 刘汝佳算法入门经典P 205 与训练指南P 332 有关于Bellman_Ford算法的介绍和代码. 其实SPFA算法就是Bellman_Ford算法的(加上了判负圈的)队列实现版本. 下面给出3种Bellman_Ford算法的实现代码:1. Bellman_Ford简单版//Bellman_Ford算法简原创 2014-07-15 10:40:31 · 1316 阅读 · 0 评论 -
无向图的双连通分量
无向图的双连通分量点-双连通图:对于一个无向连通图,如果任意两个点至少存在两条”点不重复”的路径,则说这个图是点-双连通的.这个要求等价于任意两条边都在同一个简单环内,即内部无割顶.注意:孤立点,以及两点一边这两种图都是点-双连通的.因为它们都是内部无割点.边-双连通图:如果任意两个点至少存在两条”边不重复”的路径,我们说这个图是边-双连通的.即每条边都至少在一个简单环中,即所有边都不原创 2014-06-16 21:17:48 · 1473 阅读 · 0 评论 -
有向图强连通分量
有向图强连通分量 详情请见刘汝佳>P319 有向图的强连通分量有两个算法,第一个是Kosaraju算法,该算法可以以有向图的每个强连通分量的拓扑顺序给每个强连通分量标记序号.具体代码如下: (G存原图,G2存逆图) 第二个求有向图强连通分量的算法是Tarjan算法.它的时间复杂度也是线性的,不需要计算图的逆且算法常数更小.具体代码如下:#原创 2014-06-17 19:41:49 · 2460 阅读 · 0 评论 -
memset用法
memset用法首先如果是一个int a[10]的数组,只可以对它进行两种操作:memset(a,0,sizeof(a))操作可以得到a的全0数组.memset(a,-1,sizeof(a))操作可以得到a的全-1数组.如果要置a为其他置的话就会出现不可预测的值.这个原因很好解释:因为memset操作是对字符进行操作的,且计算机中保存带符号数都是按补码保存的.当我们置a原创 2014-05-29 20:21:00 · 879 阅读 · 0 评论 -
无向图的割顶与桥
无向图的割顶与桥 具体的概念和定义比较多,在刘汝佳训练指南>>P312-314页都有详细的介绍. 下面来写求无向图割顶和桥的DFS函数.我们令pre[i]表示第一次访问i点的时间戳,令low[i]表示i节点及其后代所能连回(通过反向边)的最早祖先的pre值. 下面的dfs函数返回的是当前遍历的节点u的low值.如果u是割顶还会标记u节点.且如果u->原创 2014-06-15 10:41:01 · 1615 阅读 · 1 评论 -
拓扑排序
拓扑排序对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。一个有向图无法拓扑排序时只有一种情况:该有向图中存在环.刘汝佳入门经典P111中给出了拓扑排序的代码,其中关键点在于状态数组C[i]的使用.代码如下,具体细节自己体会:原创 2014-06-12 20:53:50 · 970 阅读 · 0 评论 -
欧拉图
欧拉图转自:http://www.cnblogs.com/destinydesigner/archive/2009/09/28/1575674.html1 定义欧拉通路(Euler tour)——通过图中每条边一次且仅一次,并且过每一顶点的通路。欧拉回路 (Eulercircuit)——通过图中每条边一次且仅一次,并且过每一顶点的回路。欧拉图——存在欧拉回路的图。 2转载 2014-06-10 11:08:15 · 1287 阅读 · 0 评论 -
2-SAT 问题
2-SAT 问题 有关2-SAT问题的详解可见刘汝佳>P323页,不过这里有个问题: 如何证明”如果当前考虑的变量不管赋值为真还是假都会引起矛盾,可以证明整个2-SAT问题无解(即使调整以前赋值的其他变量也没有用)”.算法模板:#include#include#includeusing namespace std;const int maxn=10000+10;s原创 2014-06-24 10:43:25 · 1365 阅读 · 0 评论 -
SplayTree学习
SplayTree学习 具体介绍SplayTree的功能我就不说了,可以参考刘汝佳:训练指南P239 或者 下面这个博客:http://www.cnblogs.com/kuangbin/archive/2012/10/07/2714068.html推荐看论文: (1) 杨思雨《伸展树的基本操作与应用》(2) Crash《运用伸展树解决数列维护问题》原创 2014-04-25 14:00:17 · 1426 阅读 · 0 评论 -
ACM资料
刘汝佳:https://code.google.com/p/aoapc-book///HDU开栈外挂#pragma comment(linker, "/STACK:102400000,102400000")线段树详细资料:http://www.notonlysuccess.com/index.php/segment-tree-complete/AC自动机:转载 2014-03-08 21:42:19 · 847 阅读 · 0 评论 -
字典树Trie
字典树Trie(转)http://www.cnblogs.com/tanky_woo/archive/2010/09/24/1833717.html字典树(讲解+模版)又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,转载 2014-04-07 14:26:09 · 940 阅读 · 0 评论 -
背包九讲
P01: 01背包问题 题目 有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。基本思路 这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。 用子问题定义状态:即f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。则其状态转移方程转载 2014-04-02 18:10:47 · 543 阅读 · 0 评论 -
背包专辑
背包专辑转自:http://blog.csdn.net/liuqiyao_01/article/details/8477725 本文ZeroClock原创.这短时间看了论文《背包九讲》,看到背包问题解法中的优美之处也看到背包问题在现实中的应用,总结出一句话:背包问题值得一看。 背包问题可以概括为这样的模型:有若干种选择,每种选择有一定的代价和价值,做某些选择会得到特定转载 2014-04-02 18:17:18 · 693 阅读 · 0 评论 -
POJ 计算几何入门题目推荐(转)
POJ 计算几何入门题目推荐(转) 其实也谈不上推荐,只是自己做过的题目而已,甚至有的题目尚未AC,让在挣扎中。之所以推荐计算几何题,是因为,本人感觉ACM各种算法中计算几何算是比较实际的算法,在很多领域有着重要的用途(例如本人的专业,GIS)。以后若有机会,我会补充、完善这个列表。计算几何题的特点与做题要领:1.大部分不会很难,少部分题目思路很巧妙2.做计算几何转载 2014-04-02 23:00:13 · 797 阅读 · 0 评论 -
Manacher算法,O(n)回文子串算法
Manacher算法,O(n)回文子串算法 这里,我介绍一下O(n)回文串处理的一种方法。Manacher算法.原文地址:http://zhuhongcheng.wordpress.com/2009/08/02/a-simple-linear-time-algorithm-for-finding-longest-palindrome-sub-string/ 其实原文说得转载 2014-04-07 00:49:26 · 1398 阅读 · 0 评论