算法&数据结构
wdcxccsdn
这个作者很懒,什么都没留下…
展开
-
suffix_array(后缀数组)
#include<iostream>#include<vector>#include<string>#include<algorithm>using namespace std;vector<int> grade; vector<int> sa;vector<int> tempg;int k;string s;bool cmpsa(int a, int b){ i原创 2015-05-17 10:48:36 · 664 阅读 · 0 评论 -
Binary_Indexed_Tree(树状数组)
#include<iostream>using namespace std;int bit[1000]; //树状数组int n; //节点数int input[1000]; //输入数据//获得最低位1int lowbit(int i){ return i&(-i);}//求和int sum(int i){原创 2015-05-28 12:24:28 · 289 阅读 · 0 评论 -
union_set
#include<iostream>using namespace std;//开个数组放数据,如果par[i]>0说明i节点不是所在集合的根节点,par[i]存放的就是i节点的父节点,如果par[i]<0,说明i节点是所在集合的根节点,par[i]的值就是以i节点为根节点的集合的高度,用负数表示int par[10000];//查找根节点的函数find,查找到结果后顺便压缩下路径(坍塌规则)原创 2015-05-21 17:47:51 · 382 阅读 · 0 评论 -
longeset_common_profix_array(lcp_array,最长公共前缀数组,高度数组)
#include<iostream>#include<vector>#include<algorithm>#include<string>using namespace std;string s;vector<int> sa;vector<int> grade;vector<int> tmpg;int lcp[1000];int k;int n;bool cmpg(int a,原创 2015-05-18 00:38:10 · 498 阅读 · 0 评论