随笔分类 -  数据结构

摘要:平衡树 维基百科,自由的百科全书 平衡树是计算机科学中的一类数据结构。 平衡树是计算机科学中的一类改进的二叉查找树。一般的二叉查找树的查询复杂度是跟目标结点到树根的距离(即深度)有关,因此当结点的深度普遍较大时,查询的均摊复杂度会上升,为了更高效的查询,平衡树应运而生了。 不平衡的树结构 在这里,平 阅读全文
posted @ 2017-11-12 19:10 cdongyang 阅读(651) 评论(0) 推荐(1)
摘要:详细讲解: 红黑树 - wiki 阅读全文
posted @ 2017-11-12 19:03 cdongyang 阅读(194) 评论(0) 推荐(0)
摘要:详细讲解: 树堆 - wiki 阅读全文
posted @ 2017-11-06 21:31 cdongyang 阅读(225) 评论(0) 推荐(0)
摘要:1 #include <stdio.h> 2 #include <algorithm> 3 #define MAX 100000 4 #define LL long long 5 #define unsigned U 6 //using namespace std; 7 int cas=1,T; 8 阅读全文
posted @ 2016-04-06 20:59 cdongyang 阅读(412) 评论(0) 推荐(0)
摘要:inputT 1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #define... 阅读全文
posted @ 2015-12-04 17:56 cdongyang 阅读(295) 评论(0) 推荐(0)
摘要:inputn 1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include... 阅读全文
posted @ 2015-12-03 18:38 cdongyang 阅读(193) 评论(0) 推荐(0)
摘要:inputn 21)若没有则不输出做法:若next数组是连续的整数且next[i]+1是错位部分长度的倍数,则必有循环出现,且循环次数为(i+1)/错位部分长度 1 #include 2 #include 3 #include 4 #include 5 #include 6 #includ... 阅读全文
posted @ 2015-12-03 15:39 cdongyang 阅读(156) 评论(0) 推荐(0)
摘要:input字符串s 1 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #inc... 阅读全文
posted @ 2015-12-03 13:50 cdongyang 阅读(209) 评论(0) 推荐(0)
摘要:inputn 2 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #define... 阅读全文
posted @ 2015-12-03 11:18 cdongyang 阅读(220) 评论(0) 推荐(0)
摘要:inputr c m r 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #d... 阅读全文
posted @ 2015-11-23 20:29 cdongyang 阅读(240) 评论(0) 推荐(0)
摘要:inputn m 1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #defi... 阅读全文
posted @ 2015-11-23 09:09 cdongyang 阅读(285) 评论(0) 推荐(0)
摘要:inputq nq行 F a b或者Q a boutputface left face top face right可以用map或者线段树做 1 //map 2 #include 3 #include 4 using namespace std; 5 mapa; 6 int main() 7 {... 阅读全文
posted @ 2015-11-22 19:32 cdongyang 阅读(163) 评论(0) 推荐(0)
摘要:input1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 13 using namespace st... 阅读全文
posted @ 2015-11-05 10:11 cdongyang 阅读(173) 评论(0) 推荐(0)
摘要:input1=100outputmax((a[i]+a[j])^a[k]) i!=j!=k做法,将s数组建成一颗01字典树,枚举a[i]+a[j]找最大,找之前要把a[i]和a[j]删掉,找完后再插入 1 #include 2 #include 3 #include 4 #includ... 阅读全文
posted @ 2015-11-02 09:23 cdongyang 阅读(399) 评论(0) 推荐(0)
摘要:input1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 11 using namespace std;12 13 int a[100010][2]... 阅读全文
posted @ 2015-11-01 10:54 cdongyang 阅读(228) 评论(0) 推荐(0)
摘要:input1val时,a[i+1]*b[j]>val 1 #include 2 #include 3 #include 4 using namespace std; 5 typedef long long LL; 6 7 const int MAXN = 100010; 8 9 int... 阅读全文
posted @ 2015-10-31 10:22 cdongyang 阅读(1320) 评论(0) 推荐(0)
摘要:#include #include #include #include #include #include #include #include #include #define lowbit(x) x&-xusing namespace std;int c[100010],a[20010],n,T,... 阅读全文
posted @ 2015-10-30 20:33 cdongyang 阅读(152) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 12 using namespace std;13 1... 阅读全文
posted @ 2015-10-29 20:33 cdongyang 阅读(153) 评论(0) 推荐(0)
摘要:分治法和字典树都可以,都是递归,但字典树耗内存 从第一bit开始,若相同则xor为0,分到同一部分,不相同则统计,且此时lowbit为这一bit,最后结果要乘以2 1 /*分治法*/ 2 #include 3 #define MOD 998244353 4 5 using namespac... 阅读全文
posted @ 2015-10-13 19:36 cdongyang 阅读(170) 评论(0) 推荐(0)