![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 80
ajsdfkjasdfasdif
这个作者很懒,什么都没留下…
展开
-
HDOJ1247 trie
#include"iostream" #include"algorithm" #include"vector" #include"map" #include"string" #include"deque" #include"queue" #include"stack" #include"cstdio" #include"ctype.h" #include"cmath" #include"set"原创 2016-05-18 12:36:16 · 204 阅读 · 0 评论 -
POJ 3349 HASH
#include"map" #include"iostream" #include"vector" #include"stdio.h" using namespace std; typedef long long ll; const int prime=14997; const int maxn=100000+10; vectorHash[prime]; int g[maxn][6]; int c原创 2016-09-01 07:00:28 · 257 阅读 · 0 评论 -
VIJOS 1132 树的遍历
#include"iostream" #include"string" #include"cstring" #include"algorithm" #include"cstdio" using namespace std; struct node{ node *lchild,*rchild; char val; }; string f(string a,int b,int e)原创 2016-08-22 22:43:56 · 213 阅读 · 0 评论 -
HDOJ 最大矩形面积 栈
精度很重要,看到大数字就要注意是否要使用long long 或者是 __int64 #include"iostream" #include"cstdio" #include"algorithm" #include"vector" #include"string" #include"stack" using namespace std; const int maxn=100000+10; __i原创 2016-08-10 19:54:31 · 449 阅读 · 0 评论 -
二分图染色
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include inline in原创 2016-08-13 03:11:16 · 239 阅读 · 0 评论 -
POJ 3468 线段树 区间更新
#include #include #include #define ls L,M,rt<<1 #define rs M+1,R,rt<<1|1 using namespace std; typedef long long ll; const int maxn = 111110; ll tree[maxn<<2]; ll add[maxn<<2]; void pushup(int rt)原创 2016-08-17 19:38:26 · 206 阅读 · 0 评论 -
HDOJ 5726 线段树 + map
这个map我也是醉了。 这个 主要是 那个 不同gcd值得区间数预处理难弄。 a[1...i]=a[1...i-1]+a[i...i]; 当前区间:不同的gcd值相对应的区间数=之前区间:不同的gcd值相对应的区间数+gcd(num[i],之前区间的某个gcd); #include"iostream" #include"vector" #include"set" #include"qu原创 2016-08-14 07:12:55 · 672 阅读 · 0 评论 -
深度优先搜索和广度优先搜索
//DFS #include #include #include using namespace std; vector > V; //邻接表 vector visit; int n;//点数 int m;//边数 vector ans; void dfs(int n){ ans.push_back(n); visit[n] = 1; for(int j=0;j<V[原创 2016-11-29 15:54:22 · 233 阅读 · 0 评论 -
prim和kruskal
#include"iostream" #include"vector" #include"stack" using namespace std; const int INF = 1111111; struct Edge{ //end,len(start--->end) int ed; int len; }; struct Node{ int len; int st;原创 2016-12-03 00:24:03 · 209 阅读 · 0 评论 -
拓扑排序
#include"iostream" #include"stack" #include"vector" using namespace std; vector > G;//采用邻接表保存图 vector degree; //度数表 vector is_in_stack;//判断是否入过栈 vector ans; //保存答案 int n,m; /原创 2016-12-03 17:17:57 · 187 阅读 · 0 评论 -
循环队列
#include"iostream" using namespace std; const int MAXN = 5; //队列中最大能够存储的元素个数 int Queue[MAXN]; //队列 int Front,Rail; //队首,队尾 int push(int e){ //插入队首 Queue[Rail] = e; Rail = (Rail+1)%MAXN; }原创 2016-12-03 22:58:45 · 289 阅读 · 0 评论 -
POJ最长公共子序列1458
#include"iostream" #include"cstdio" #include"string" #include"algorithm" using namespace std; int main() { //freopen("a.txt","r",stdin); char a[1000]; char b[1000]; while(cin>>a>>b) { int i,原创 2016-05-21 16:09:26 · 211 阅读 · 0 评论 -
TJU 1036 模拟栈
#include"stdio.h" #include"iostream" #include"stack" using namespace std; int main() { //freopen("a.txt","r",stdin); int n,pos,a[1010]; while(cin>>n,n) { while(cin>>a[1],a[1])原创 2016-08-18 23:34:39 · 178 阅读 · 0 评论 -
HDOJ 5776 树状数组
sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Submission(s): 1372 Accepted Submission(s): 572 Problem Description Given a sequence, you're原创 2016-08-10 00:03:00 · 237 阅读 · 0 评论 -
POJ3630 静态建立trie
#include"iostream" #include"cstdio" using namespace std; const int maxn=100000+10; //数组开大点 struct trie { int val[maxn]; int ch[maxn][10]; int sz; trie() { sz=1; memset(ch[0],0,sizeof(ch[0]))原创 2016-05-23 17:55:35 · 481 阅读 · 0 评论 -
快速排序
#include"iostream" #include"cstdlib" using namespace std; const int MAXN = 199; int arr[MAXN]; int n; void swap(int i,int j){ int t = arr[i];arr[i] = arr[j];arr[j] = t; } void quick_sort(int left原创 2016-12-04 13:50:57 · 192 阅读 · 0 评论