ACM_数据结构
LzyRapX
Just For Fun .
展开
-
16哈理工新生赛 J Another Tree (树上BFS)
题目链接:点击打开链接Another TreeTime Limit: 1000 MSMemory Limit: 32768 KTotal Submit: 42(16 users)Total Accepted: 15(14 users)Rating: Special Judge: No原创 2016-12-08 15:50:44 · 574 阅读 · 0 评论 -
16浙理工新生赛 K KI的目标 (树上dfs)
4248: KI的目标Time Limit: 2 Sec Memory Limit: 128 MBSubmit: 290 Solved: 73DescriptionKI给自己制定了最近制定了一些学习目标,因为有些大目标的达到要先完成一些小目标,所以KI就下意识的把这些目标连成了一棵树,以1号目标为根。 KI是个很谨慎的人,于是他请他的朋友们对这棵树上的每条边原创 2016-12-07 20:32:54 · 444 阅读 · 0 评论 -
16哈理工新生赛 G FBI Tree (模拟二叉树后序遍历)
题目链接:点击打开链接FBI TreeTime Limit: 1000 MSMemory Limit: 32768 KTotal Submit: 58(41 users)Total Accepted: 47(41 users)Rating: Special Judge: NoDescri原创 2016-12-06 14:11:43 · 551 阅读 · 0 评论 -
伸展树(Splay Tree)
伸展树【基本概念】伸展树(Splay Tree),是一种高效的二叉搜索树,但与Treap不同的是,它不需要维护其他的性质,他是通过对每次查询,插入处理到的节点进行提根(splay)操作来达到这一效果的。【性质】伸展树操作的均摊时间是O(logN)的。【算法】伸展树的精髓就在于Splay操作。Splay操作是通过不断的双旋,来提根的。特别的,如原创 2016-10-13 22:12:38 · 1193 阅读 · 0 评论 -
Treap
Treap【基本概念】Treap=Tree+Heap。Tree是指二叉搜索树,而Heap指的是二叉堆,一般是最小堆。Treap需要维护两值,一个是二叉搜索树中的键值(key),另一个是最小堆中的优先级(aux)。Treap是一棵aux值满足最小堆性质的二叉树。Treap的aux值是在插入时随机赋值的。所以会出现新插入的节点不满足堆的性质,所以需要引入旋转操作。如下图所示:原创 2016-10-13 21:42:08 · 681 阅读 · 0 评论 -
HDU 1990 Monkey Vines (瞎搞)
Monkey VinesTime Limit: 1000/500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 451 Accepted Submission(s): 232Problem DescriptionDeep in the Amazon jun原创 2016-10-22 21:39:31 · 874 阅读 · 0 评论 -
左偏树
左偏树:【基本概念】左偏树是一种易实现的可并堆,它是二叉树的变种,除了需要维护堆性质外,每个节点多记录一个值,设为s值,表示该节点到最近的叶子节点的距离(这里的叶子节点包括只含有一个儿子的节点)。左偏树需要保证每个节点右儿子的s值总是不大于左儿子的s值。所以相较于二叉堆,左偏树在树的结构上往往是很不平衡的。同二叉堆一样,左偏树可以维护一个最大化堆,也可以维护一个最小化堆。以下不加特殊说原创 2016-10-12 14:34:51 · 431 阅读 · 0 评论 -
理解二叉查找树
二叉查找树(Binary Search Tree),也称二叉搜索树,是指一棵空树或者具有下列性质的二叉树:任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值;任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值;任意节点的左、右子树也分别为二叉查找树;没有键值相等的节点。二叉查找树相比于其他数据结构的优势在于查找、插入的时间复杂度较低。为O(log n)。原创 2016-07-25 21:16:19 · 994 阅读 · 0 评论 -
堆 (数据结构)
堆是什么?是一种特殊的完全二叉树,就像下面这棵树一样。有没有发现这棵二叉树有一个特点,就是所有父结点都比子结点要小(注意:圆圈里面的数是值,圆圈上面的数是这个结点的编号,此规定仅适用于本节)。符合这样特点的完全二叉树我们称为最小堆。反之,如果所有父结点都比子结点要大,这样的完全二叉树称为最大堆。那这一特性究竟有什么用呢?假如有14个数分别是99、5、36、7、22、17、4原创 2016-06-01 13:27:19 · 3040 阅读 · 1 评论 -
卡牌游戏(queue的基础应用)
卡牌游戏(queue的基础应用)桌上有一叠卡牌,从第一张牌(即位于顶面的牌)开始从上往下依次编号为1~n;当至少还剩两张牌时进行一下操作:把第一张牌扔掉,然后把新的第一张放到整叠牌的最后。输入:n;输出:每次扔掉的牌以及最后剩下的牌样例输入:7样例输出:1 3 5 7 4 2 6题解:模拟队列的进出。。。代码:#include#includeusing原创 2016-04-14 11:39:19 · 6771 阅读 · 0 评论 -
约瑟夫环
约瑟夫环描述 约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3…n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人。全部出列。请利用以下链队列实现该算法。#define OK 1#define ERROR 0#define OVERFLOW -2typedef int QE原创 2016-02-28 21:31:49 · 586 阅读 · 0 评论 -
1473 出栈顺序的判定
数据结构:出栈顺序的判定Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByteDescription堆栈是一个很特殊的数据结构,他具有先进后出的特性,在很多应用中都发挥了重要的作用。 对于一组数,怎样判定是否可以由原始数据经过压栈和出栈得到? 如此:即对于一组数,从第一个数开始扫描,当扫描到a[i]时,在a[i]后原创 2016-04-02 11:20:17 · 790 阅读 · 0 评论 -
1474 数据结构:进制转换
数据结构:进制转换Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByteDescription输入一个十进制整数n,输出它对应的5进制。要求使用堆栈。Input一个十进制整数n。Outputn对应的5进制形式。Sample Input13Sample Outp原创 2016-04-01 19:29:16 · 292 阅读 · 0 评论 -
1467 数据结构:一元多项式加法
数据结构:一元多项式加法Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByteDescription给定2个一元多项式,计算它们的和。例如:f(x)=5x3-3x2+1和g(x)=3x4+3x2+x,则h(x)=f(x)+g(x)=3x4+5x3+x+1。Input只有一个测试案例,输入包括2行。原创 2016-04-01 19:26:53 · 1324 阅读 · 0 评论 -
1465 数据结构:有序链表的合并
数据结构:有序链表的合并Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByteDescription线性表a(有n个元素)和线性表b(有m个元素)的元素均为整数,并且均按从小到大排列。现将线性表a和b中的元素合并为一个新的的线性表c,c中的元素仍然按照从小到大排列。其中:0请将下面的程序填写完整:#in原创 2016-04-01 19:24:17 · 737 阅读 · 0 评论 -
1464 数据结构:线性表插入元素
数据结构:线性表插入元素Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByteTotal Submit:104 Accepted:57Description线性表a(有n个元素)和线性表b(有m个元素)的元素均为整数。现将b中存在而a中不存在的元素插入到线性表a中。其中:0Input只有一个测试原创 2016-04-01 19:21:29 · 1385 阅读 · 0 评论 -
1462 数据结构:线性表的插入
数据结构:线性表的插入Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByteDescription输入一个整数n和n个从小到大的整数,将这n个整数存放在一个线性表中。从键盘输入一个整数x,编写程序将x插入到将这个线性表的适当位置,使得线性表仍然从小到大有序。 (n不超过100)Input第1行为一个原创 2016-04-01 19:19:14 · 961 阅读 · 0 评论 -
E. Bindian Signalizing (拆环成链)(好题)
点击打开链接http://codeforces.com/contest/5/problem/EE. Bindian SignalizingEveryone knows that long ago on the territory of present-day Berland there lived Bindian tribes. Their capital wa原创 2017-04-05 13:42:39 · 1220 阅读 · 0 评论