随笔分类 -  知识点

摘要:用处 使用线段树可以快速的查找某一个节点在若干条线段中出现的次数; 时间复杂度为O(logN)。而未优化的空间复杂度为2N,因此有时需要离散化让空间压缩。 结构 线段树是建立在线段的基础上,每个结点都代表了一条线段[a,b]。 长度为1的线段称为元线段。 非元线段都有两个子结点,左结点代表的线段为[ 阅读全文
posted @ 2017-05-20 19:36 J_william 阅读(253) 评论(0) 推荐(0)
摘要:含义 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。 线性表 先进先出队列(first in first out) !先进先出 操作 阅读全文
posted @ 2017-05-17 21:24 J_william 阅读(193) 评论(0) 推荐(0)
摘要:介绍 栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使 阅读全文
posted @ 2017-05-17 21:12 J_william 阅读(220) 评论(0) 推荐(0)
摘要:定义 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。 分类 集合 数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系; 集合 阅读全文
posted @ 2017-05-17 20:50 J_william 阅读(210) 评论(0) 推荐(0)
摘要:定义 通过图(无向图或有向图)中所有边且每边仅通过一次通路称为欧拉通路,相应的回路称为欧拉回路。 具有欧拉回路的图称为欧拉图(Euler Graph),具有欧拉通路而无欧拉回路的图称为半欧拉图。 一些概念性的东西 欧拉通路 通过图中每条边且只通过一次,并且经过每一顶点的通路。 无向连通图G含有欧拉通 阅读全文
posted @ 2017-05-10 19:33 J_william 阅读(755) 评论(0) 推荐(0)
摘要:二分图匹配 极大匹配(Maximal Matching)是指在当前已完成的匹配下,无法再通过增加未完成匹配的边的方式来增加匹配的边数。最大匹配(maximum matching)是所有极大匹配当中边数最大的一个匹配。选择这样的边数最大的子集称为图的最大匹配问题。 如果一个匹配中,图中的每个顶点都和图 阅读全文
posted @ 2017-05-07 17:26 J_william 阅读(256) 评论(0) 推荐(0)
摘要:最小生成树 Prim 时间复杂度O(n2) 蓝白点思想,蓝点代表为纳入最小生成树的点,白点代表已纳入的点。 初始化所有点到最小生成树的距离;(极大值) 选择一个点作为树的根节点;(没有要求的话,一般选择第一个点) 枚举该点出发的所有边,进行松弛操作,并将该点标为白色; 从蓝点中选取离最小生成树最近的 阅读全文
posted @ 2017-05-07 17:25 J_william 阅读(196) 评论(0) 推荐(0)
摘要:多源最短路 Floyd 时间复杂度:O(n3);空间复杂度:O(n2) 单源最短路 SPFA 初始化最短路径表; 源点入队; 取出队首点; 枚举取出点的边; 如果能松弛,就松弛,并把被松弛的点加入队列; 如此循环直到队列为空。 适用于各种找单源最短路的题目; 适用于负权图; 可以根据判断节点的入队次 阅读全文
posted @ 2017-05-07 17:23 J_william 阅读(185) 评论(0) 推荐(0)
摘要:图论概念 图论〔Graph Theory〕是数学的一个分支。它以图为研究对象。图论中的图是由若干给定的点及连接两点的线所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系,用点代表事物,用连接两点的线表示相应两个事物间具有这种关系。 图的分类 有向图,无向图;单图; 平面图,连通图,强连通图 阅读全文
posted @ 2017-05-07 08:10 J_william 阅读(615) 评论(0) 推荐(0)
摘要:对拍是一个OIer的基本功,特别是对于OI赛制的比赛,想要多水分,对拍是一个必须学会的技巧。(一边A的神犇和手模逆天数据的大佬请出门右转) 对拍程序一般由随机数发生器,对拍程序组成。 随机数发生器 (就是用来造数据的) 需求库: include<ctime>(windows)||include<ti 阅读全文
posted @ 2017-05-06 21:53 J_william 阅读(424) 评论(0) 推荐(0)
摘要:常用的输入输出: cin/cout流 <iostream> using namespace 优点:各种数据类型都可直接读入输出。 缺点:速度慢(可以通过取消缓存优化); 无法格式输出。 scanf/printf <cstdio> 优点:格式化输入输出; 看起来挺高大上的。 缺点:各种格式符号。 读入 阅读全文
posted @ 2017-04-22 10:52 J_william 阅读(149) 评论(0) 推荐(0)