首先,本文给出邻接表与邻接矩阵的概念,然后,对相关概念进行阐释并给出实现源码,最后,对两种方法进行了比较分析给出给进一步的改进方向。...
分类:
其他好文 时间:
2015-07-11 16:47:24
阅读次数:
135
本文记录了基于邻接表表示的有向有权图的基本操作。邻接表表示的图的结构就是用一个散列表存储图的节点,而每个节点后面跟着从节点出发的所有边的集合,这些边用链表连接起来,所以在这样的图中寻找一个节点发出的边是容易的,但是寻找进入一个节点的边是困难的,需要遍历所有的边。删除一条边也比较容易,删除一个节点则需要寻找与该节点相关的所有边,并将这些边也删除。#ifndef _NOWEIGHTGRAPH_H_
#d...
分类:
其他好文 时间:
2015-05-28 21:37:32
阅读次数:
238
一, 图上的应用可以用归纳法证明, 一张图的邻接矩阵(只含0, 1)在自乘 k 次以后得到的就是从i 走 k 步之后恰好走到 j 的方案数。于是一些数据范围明显用 O(n) 及以上的复杂度过不了的题时常会用到加一些变形后的矩阵乘法。bzoj 1297 : [SCOI2009]迷路算一张有权图 走 k...
分类:
其他好文 时间:
2015-02-23 00:12:05
阅读次数:
212
给定一个简单无向有权图,求其最小生成树的个数。在我们用Kruskal计算最小生成树时,由于相同权值的边选择的顺序是随机的,所以我们最小生成树就也许有很多。对于同一权值的边,我们不论用什么顺序“扫过”,最终的得到的无向森林的连通性一定是一样的,即对后面的边是否加入的影响也是一样的,所以可以根据这一点将...
分类:
其他好文 时间:
2015-02-20 16:21:31
阅读次数:
150
①图论基础
图由点和边组成
记顶点集合为V 边集合为E的图为G=(V,E)
图可分为有向图和无向图。如表示朋友关系的图为无向图,表示点之间大小关系的图为有向图。
边也可以带有权值,带有权值称为有权图,不带有权值称为 无权图。
一.关于无向图
任意两点之间都有路径的图叫做连通图,顶点连接的边数称为这个点的度。
没有环的连通图就是树,没有环的非连通图就是森林。
一棵树的边数=顶...
分类:
其他好文 时间:
2015-01-13 23:25:54
阅读次数:
598
题目大意:给出一个无向有权图,找出一条从1到n的路径,使得路径上权值的异或和最大,路径可以重复走Input第一行包含两个整数N和 M, 表示该无向图中点的数目与边的数目。 接下来M 行描述 M 条边,每行三个整数Si,Ti ,Di,表示 Si 与Ti之间存在 一条权值为 Di的无向边。 图中可能有重...
分类:
其他好文 时间:
2014-12-14 15:42:46
阅读次数:
139
【原题】http://acm.hdu.edu.cn/showproblem.php?pid=1598【类型】最小生成树+枚举【题意】给定一张无向有权图和一些询问,每一个询问都是一对起/终点,对于每一个询问,要求找到一条路能从起点到达终点,并且得到该条路上所有边权值中最大边与最小边的差,使得这个差值达...
分类:
其他好文 时间:
2014-09-07 17:16:35
阅读次数:
204
为了表现图中顶点之间的关联,我们可以使用邻接矩阵来实现图结构。所谓的邻接矩阵,就是一个反应边与边之间联系的二维数组。这个二维数组我们用matrix[numV][numV]表示,其中numV是顶点数。
对于无权图
若顶点Vi和Vj之间有边,则matrix[Vi][Vj]=1;否则matrix[Vi][Vj]=0。
对于有权图
若顶点Vi和Vj之间有边,且权值为weight,则matrix[Vi][Vj]=weight;否则matrix[Vi][Vj]=0或MAXWEIGHT(取最小权值或最大权值)。...
分类:
其他好文 时间:
2014-07-31 23:56:30
阅读次数:
296
本文介绍的是图的非负权值的单源最短路径问题。问题的提出是,对于有权图D,t提供源点v,要找到从v到其他所有点的最短路径,即单源最短路径问题,在本文中,解决这一问题,是普遍比较熟悉的Dijkstra算法。
算法核心思想参见维基。简而言之,设集合S存放已经求出了最短路径的点。初始状态S中只有一个点v0,...
分类:
其他好文 时间:
2014-05-13 16:49:37
阅读次数:
284