一、基于邻接矩阵表示法的无向图 邻接矩阵是一种利用一维数组记录点集信息、二维数组记录边集信息来表示图的表示法,因此我们可以将图抽象成一个类,点集信息和边集信息抽象成类的属性,就可以在Java中描述出来,代码如下: 每一个具体的图,就是该类的一个实例化对象,因此我们可以在构造函数中实现图的创建,代码如 ...
分类:
编程语言 时间:
2019-06-09 13:15:45
阅读次数:
117
本周我们学习了图这一结构,图是一种比线性表和树更为复杂的数据结构,因此我也花费了更多的时间在书本上。 图可由两个集合V和E组成,其中V是顶点的集合,E是边的集合。对于图而言,可根据边集E是否为有向或无向,将图分为有向图和无向图,如下 除此之外,图的基本术语也需要我们熟记并且掌握,见下图 了解了图的基 ...
分类:
其他好文 时间:
2019-05-19 14:22:49
阅读次数:
106
先来理解几个概念 割 在原先能够流通的网络中移除的边集,使得网络无法流通 最小割 所有的割中边权和最小的割即为最小割 可以想象一下,Kido为了自给自足给自己建了超多供水管道(kido能进行光合作用),形成了一个网络,然后容量越大的管道防护设施越好,但是总有人想渴死Kido就想炸掉管道,但是贫乏的恐 ...
分类:
其他好文 时间:
2019-05-11 19:50:58
阅读次数:
132
图的概念、存储及遍历 图是一种特殊的数据结构,由点和边构成,它可以用来描述元素之间的网状关系,这个网状没有顺序,也没有层次,就是简单的把各个元素连接起来。图在我们的生活中也十分常见,地图就是最简单的例子。 图的基本概念: 顶点集合为V,边集合为E的图记作G=(V,E)。另外,G=(V,E)的顶点数和 ...
分类:
其他好文 时间:
2019-05-05 21:55:04
阅读次数:
120
图论蛮好玩的呢 比起数论真是有趣多了 有空整理一下下 首先,图是个什么鬼东东呢 graph, 一堆点集,一堆边集,可以把各种事物抽象成点,事物之间的联系用边来表示,边上还可有权值,表示距离费用等 e.g. 把各个城市抽象成点,城市之间可以由高铁直达的称作有联系(边), 边上还可附加权值,俩城市间距离 ...
分类:
其他好文 时间:
2019-05-03 09:42:50
阅读次数:
134
今天主讲图论。 前言:图的定义:图G是一个有序二元组(V,E),其中V称为顶集(Vertices Set),E称为边集(Edges set),E与V不相交。它们亦可写成V(G)和E(G)。 一、图的存储: 1、邻接矩阵: 2、邻接表: 数组模拟链表实现:记录每条边的终点、边权(如果有的话)、同一起点 ...
分类:
其他好文 时间:
2019-05-02 21:27:10
阅读次数:
163
大意: 将所有长度为2*n的合法括号序列建成一颗trie树, 求trie树上选出一个最大不相交的边集, 输出边集大小. 最大边集数一定不超过奇数层结点数. 这个上界可以通过从底层贪心达到, 所以就转化为求奇数层结点数. 然后就dp求出前$i$为'('比')'多j个的方案数, 奇数层且合法的时候统计一 ...
分类:
其他好文 时间:
2019-04-30 10:45:25
阅读次数:
227
原文链接 首先我们了解一种数据结构,前向星,是以存边的方式存图的。我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序,并记录下以某个点为起点的所有边在数组中的起始位置和存储长度,那么前向星就构造好了.用len[i]来记录所有以i为起点的边在数组中的存储长度.用head ...
分类:
其他好文 时间:
2019-04-13 11:13:20
阅读次数:
180
SJ图论非常流弊,为了省赛队里知识尽量广,我就直接把图continue,如今回想起来丫的全忘了,从头開始吧。 先写写图的存储,再写写最小生成树和最短路的几个经典算法。月球美容计划就能够结束了。0 0。拖了好久,还有非常多内容要写。- - 这次总结了邻接矩阵,邻接表。十字链表,邻接多重表,边集数组,这 ...
分类:
其他好文 时间:
2019-04-10 13:38:15
阅读次数:
169
题目链接 就是裸的最小生成树,复习一下。 用的是prim算法。 G=(V,E),V是点集,E是边集 假设T=(U,TE)是最小生成树。U,TE初始化为空 首先从V中任取一点 假设取V1,然后U={V1},只要U是V的真子集,就从那些一个端点在T中,一个端点在T外的边中,找一条最短边。一直下去,直到找 ...
分类:
Web程序 时间:
2019-04-07 21:47:39
阅读次数:
143