图 Graph
本文主要内容为:图的定义以及基本术语
- 图的定义
- 图
图G的组成:由 数据元素的集合E 和 数据间的关系集合E 组成,记作:G = <V, E>
顶点 (vertex):数据元素,V就是顶点的有穷非空集合
边 (edge): 顶点的序偶对,例如 (v1, v2),E就是边的集合
- 子图
定义:设 G=<V, E> 是一个图,E' 是 E 的子集,V' 是 V 的子集,且 E' 中的边权 仅与 V' 中的顶点相关联,
则 G' = <V', E'> 称为 图G 的子图
特殊的子图:空图,只有一个顶点,图G本身
- 无向图
定义:代表一条边的顶点的序偶是无序的(即该边无方向)
表示:无序的序偶对用圆括号表示,例如 (v1, v2) 和 (v2, v1) 是代表同一条边
- 有向图
定义:代表一条边的顶点的序偶是有序的(即该边有方向)
表示:有序的序偶对用尖括号表示,例如 <v1, v2> 和 <v2, v1> 是代表不同的边
弧:有向图的边的别称
弧尾 / 始点:边的起点,例如 <v1, v2> 中的 v1
弧头 / 终点:边的终点,例如 <v1, v2> 中的 v2
- 带权图
定义:图的每条边边或弧都附带权(weight)
权的作用:可以用于表示从一个顶点到另一个顶点的距离,费用,代价等等
- 稀疏图:边比较少的图
- 稠密图:边比较多的图
- 完全图:任何两个顶点间都有边相关联的图
- 图的基本术语
- 无向图顶点 v 的度:与该顶点相关的边的数目,记作 D(v)
- 有向图顶点 v 的入度:以顶点 v 为终点的弧的数目,记作 ID(v)
- 有向图顶点 v 的出度:以顶点 v 为起点的弧的数目, 记作 OD(v)
- 终端顶点 / 叶子:出度为 0 的顶点
- 路径:从一个顶点到另一个顶点,中间允许经过其他顶点,有向图的路径也是有向的
- 路径长度:路径上的 边 或 弧 * 权重 之和
- 回路 / 环:路径的起点和终点是同一个顶点的路径
- 图的根:从该顶点有路径可以到达图的其他所有顶点
- 连通图:无向图的任意两个顶点有路径
- 强连通图:有向图的任意两个顶点之间有来回路径
- 连通分量:无向图中的极大连通子图
- 强连通分量:有向图强连通的极大子图
- 网络:带权的连通图
- 图的相关计算
n:表示图中顶点的数目
e:表示图中边的数目
- 无向图 e 的取值范围:[0,n(n - 1) / 2]
- 有向图 e 的取值范围:[0, n(n - 1)]
图 Graph的更多相关文章
- 纸上谈兵: 图 (graph)
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 图(graph)是一种比较松散的数据结构.它有一些节点(vertice),在某些节 ...
- 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (二)
本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...
- 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)
本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...
- 算法与数据结构基础 - 图(Graph)
图基础 图(Graph)应用广泛,程序中可用邻接表和邻接矩阵表示图.依据不同维度,图可以分为有向图/无向图.有权图/无权图.连通图/非连通图.循环图/非循环图,有向图中的顶点具有入度/出度的概念. 面 ...
- 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (三)
本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...
- echart——关系图graph详解
VueEchart组件见上一篇 <template> <VueEcharts :options="options" auto-resize /> </ ...
- 某种带权有向无环图(graph)的所有路径的求法
// 讨论QQ群:135202158 最近做某个东西,最后用图实现了,这里总结一下算法. 假设有以下带权有向无环图(连通或非连通,我这里用的是非连通的): 每个节点(node)可能与其他节点有向地相连 ...
- 小白学Python(18)——pyecharts 关系图 Graph
Graph-基本示例 import json import os from pyecharts import options as opts from pyecharts.charts import ...
- 【JZOJ6357】小ω的图(graph)
description analysis 拆位从高位到低位贪心 对于当前位,如果把所有当前位为\(1\)的边塞入,\(1\)和\(n\)连通,则该位必须为\(1\) 这个是因为高位的\(1\)比所有低 ...
随机推荐
- 线程队列分享ppt
- binary hacks读数笔记(共享库)
共享库从文件结构上来讲,与共享对象没什么区别.Linux下,共享库就是普通的ELF共享对象. 1.共享库命名: libname.so.x.y.z :其中最前面使用前缀lib,中间是库的名字和后缀&qu ...
- 三:登录功能实现,servlet
1)servlet 2)request 请求对象 3)response响应对象 4)转发 5)重定向 1.servlet就是用来处理客户端的请求的 1.1去官网下载 1.2 在STS上添加该包ctrl ...
- Debian 64位内核升级步骤
安装相关依赖包 apt-get install bzip2 libncurses5-dev kernel-package zlib1g-dev gcc make kernel-package wget ...
- hadoop启动脚本
记录一下一个简单的hadoop启动脚本 就是启动zookeeper集群,hadoop的HDFS和YRAN的脚本 start-cluster.sh 关于关闭的脚本,只需要顺序换一下,然后将start改为 ...
- a^b(取模运算)
a^b(sdtbu oj 1222) Description 对于任意两个正整数a,b(0 <= a, b < 10000)计算ab各位数字的和的各位数字的和的各位数字的和的各位数字的和. ...
- .net core quartz job作业调度管理组件
定时作业对于多数系统来说,都会用到,定时作业的实现方式可以有多种方式,简单的方式用Timer就可以实现,但是达不到通用的效果,本文采用Quartz基础组件来搭建一套企业通用的作业调度管理服务,希望对于 ...
- mathtype样式系统使用技巧-通过样式定义来更改方程中的字体
本教程中,我们主要介绍MathType Desktop的样式系统.演示如何通过更改样式定义来更改方程中的字体.通过样式可以快速轻松地实现我们所需的公式格式,并统一所有公式的样式. 我们以如下公式来作为 ...
- 「CERC2017」Donut Drone
题目链接 洛谷P4739 题目翻译: 你正在模拟无人机探索一个不稳定的环状行星的过程.技术上说,无人机正在穿过一个环形网格---一个在两维上都首尾环绕在一起的矩形网格.格子的行号从上到下依次编号为\( ...
- Go 大数据生态迎来重要产品 CDS
项目地址:https://github.com/tal-tech/cds ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS).它有着优异的性能,可以快速部署和运行. 不 ...