标签:算法
数据结构是以某种形式将数据组织在一起的集合,它不仅存储数据,还支持访问和处理数据的操作。算法是为求解一个问题需要遵循的、被清楚指定的简单指令的集合。下面是自己整理的常用数据结构与算法相关内容,如有错误,欢迎指出。 为了便于描述,文中涉及到的代码部分都是用Java语言编写的,其实Java本身对常
算法基础类介绍 Firstly   ->   Bag           Bag类就是一个存放东西的地方,形象起来就是一个存钱罐,可以往里面放东西,也可以瞥一眼里面有什么东西,不可以把东西从里面拿出来,除非destory它。      public interface Bag<T>
数据结构与算法--线索二叉树及其前序、中序遍历 二叉树如果某个结点没有左孩子或右孩子,则这个域就为空。如node.lChild = null, 而叶子结点两个指针域都是null。我们知道n个结点的二叉树共有2n个指针域,树只有n-1条分支,也就是说还有2n - (n -1) = n + 1个域是空指
数据结构和算法--二叉树的实现 几种二叉树 1、二叉树 和普通的树相比,二叉树有如下特点: 每个结点最多只有两棵子树,注意是最多。这意味着任意结点的度小于等于2。 子树有左右之分;某个结点只有一个孩子时,它位于左边和右边组成的是不同的树。如下图,左图是作为根结点的左孩子,右图是作为根结点的右孩子,这
3571: [Hnoi2014]画框 Time Limit: 20 Sec  Memory Limit: 128 MB Description 小T准备在家里摆放几幅画,为此他买来了N幅画和N个画框。为了体现他的品味,小T希望能合理地搭配画与画框
 这里只讲卷积在数组或者序列里的运算。卷积是两个变量在某范围内相乘后求和的结果。如果卷积的变量是序列x(n)和h(n),则卷积的结果 其中星号*表示卷积。当时序n=0时,序列h(-i)是h(i)的时序i取反的结果;时序取反使得h(i)以纵轴为中心翻转180度,所以这种相乘 后求和的计算法称为卷积和
[bzoj1011][HNOI2008]遥远的行星 标签: 乱搞 题目链接 扯淡 真的是一道神题........ 题解 这道题直接模拟是(O(n^2))的。 即[设g_i=lfloor aAi rfloor][f[i]=sum_{j=1}^{g_i} {w[i]×w[j] over {i-j}} ]
[ZJOI2008]骑士 标签: DP 题目链接 题解 把边看成无向的。 其实就是求这个东西的最大独立集。 但是这不是树,怎么求呢? 其实还是一样的求法。 对于每一个连通块。最多有这个联通块的大小数目的边。 所以这个联通块只会有一个环。 那么把这个环去掉一条边,强制这条边的两个端点不能都选,跑一个树
补题补题 牛客网给出的题解:https://www.nowcoder.com/discuss/39219 我自己目前只有前 7 题,后面一题先放着。我自己的解析也发在牛客网的题目下了。。不知能不能骗骗赞 233 魔法币 Description 小易准备去魔法王国采购魔法神器,购买魔法神器需要使用魔法
Luogu 1314 【NOIP2011】聪明的质检员 (二分) Description 小 T 是一名质量监督员,最近负责检验一批矿产的质量。这批矿产共有n个矿石,从 1 到n逐一编号,每个矿石都有自己的重量wi以及价值vi。检验矿产的流程是: 给定 m个区间[Li,Ri]; 选出一个参数W; 对
简介: 本文是博主自身对AC自动机的原理的一些理解和看法,主要以举例的方式讲解,同时又配以相应的图片。代码实现部分也予以明确的注释,希望给大家不一样的感受。AC自动机主要用于多模式字符串的匹配,本质上是KMP算法的树形扩展。这篇文章主要介绍AC自动机的工作原理,并在此基础上用Java代码实现一个简易
Luogu 1315 【NOIP2011】观光公交 (贪心) Description 风景迷人的小城Y 市,拥有n 个美丽的景点。由于慕名而来的游客越来越多,Y 市特意安排了一辆观光公交车,为游客提供更便捷的交通服务。观光公交车在第0 分钟出现在1号景点,随后依次前往2、3、4……n 号景点。从第i
BST真是神奇的东西。。。 而且种类好多呀。。。 我这个蒟蒻只学会了splayorzCJ老爷,各种树都会 好好好,不说了,直接说splay。 不知道splay是啥,,你也要知道平衡树是啥。。。 平衡树是一个神奇的数据结构, 对于任意一个节点,左儿子的值比它小,右儿子的值比它大 并且任意一棵子树单独拎
突然想到一个很有意思的问题,就是怎么判断两个矩形是否重叠? 我想到的算法是,先计算不重叠情况,再取反即可!     不重叠情况 蓝色矩形在黑色矩形的四周,这就是不重叠的情况。转换成坐标就是,蓝色矩形的 Xmin>x2 || Xmax<x1 || Ymin>y2 || Ymax&l
Luogu 1312 【NOIP2011】玛雅游戏 (搜索) Description Mayan puzzle 是最近流行起来的一个游戏。游戏界面是一个7行5列的棋盘,上面堆放着一些方块,方块不能悬空堆放,即方块必须放在最下面一行,或者放在其他方块之上。游戏通关是指在规定的步数内消除所有的方块,消除
数据结构与算法--树的三种存储结构 之前学的链表、队列、栈,都是线性表,因为其中每个数据元素只有一个前驱和一个后继。是一对一的关系。 假如是一对多的关系呢?这种数据结构就是今天要学的树。 树的定义 树是由有限个结点(假设为n)构成的集合。n = 0说明这是棵空树。一棵树中,有且只有一个根结点,按照习
线性表 线性表是最简单、也是最基本的一种线性数据结构。 它有两种存储表示法:顺序表和链表,最基本的操作是插入、删除和查找等。 顺序存储结构就是从内存中取出一段连续地址的空间,将数据依次连续的存储在这段空间中。                                     顺序表 链式存储结