本文主要内容为:图的定义以及基本术语

  • 图的定义

图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的更多相关文章

  1. 纸上谈兵: 图 (graph)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 图(graph)是一种比较松散的数据结构.它有一些节点(vertice),在某些节 ...

  2. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (二)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

  3. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

  4. 算法与数据结构基础 - 图(Graph)

    图基础 图(Graph)应用广泛,程序中可用邻接表和邻接矩阵表示图.依据不同维度,图可以分为有向图/无向图.有权图/无权图.连通图/非连通图.循环图/非循环图,有向图中的顶点具有入度/出度的概念. 面 ...

  5. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (三)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

  6. echart——关系图graph详解

    VueEchart组件见上一篇 <template> <VueEcharts :options="options" auto-resize /> </ ...

  7. 某种带权有向无环图(graph)的所有路径的求法

    // 讨论QQ群:135202158 最近做某个东西,最后用图实现了,这里总结一下算法. 假设有以下带权有向无环图(连通或非连通,我这里用的是非连通的): 每个节点(node)可能与其他节点有向地相连 ...

  8. 小白学Python(18)——pyecharts 关系图 Graph

    Graph-基本示例 import json import os from pyecharts import options as opts from pyecharts.charts import ...

  9. 【JZOJ6357】小ω的图(graph)

    description analysis 拆位从高位到低位贪心 对于当前位,如果把所有当前位为\(1\)的边塞入,\(1\)和\(n\)连通,则该位必须为\(1\) 这个是因为高位的\(1\)比所有低 ...

随机推荐

  1. Js中函数声明和函数表达式的区别

    先看以下几段烧脑的代码: f();//=>? var f = function () { console.log("var"); } function f() { conso ...

  2. 看看poll 事件掩码 --- review代码时发现掩码不分的错误

    事件 描述 是否可作为输入(events) 是否可作为输出(revents) POLLIN 数据可读(包括普通数据&优先数据) 是 是 POLLOUT 数据可写(普通数据&优先数据) ...

  3. Ceph OSD从filestore 转换到 bluestore的方法

    前言 前段时间看到豪迈的公众号上提到了这个离线转换工具,最近看到群里有人问,找了下没什么相关文档,就自己写了一个,供参考 实践步骤 获取代码并安装 git clone https://github.c ...

  4. centos使用U盘做启动盘

    软件下载地址: http://sourceforge.net/projects/iso2usb/files/latest/download?source=dlp 写于: 2014年08月04日 更新于 ...

  5. JVM初识

    先来看一张图 首先jvm是什么? jvm是java运行环境的一部分,是一种以软件模式虚拟出来的一个计算机系统. 如上图所示,JVM 主要分为三个子系统:类加载器.运行时数据区和执行引擎. 类加载器子系 ...

  6. python + selenium 搭建环境步骤

    介绍在windows下,selenium python的安装以及配置.1.首先要下载必要的安装工具. 下载python,我安装的python3.0版本,根据你自己的需要安装 下载setuptools ...

  7. Cassandra + JSON?答案就是Stargate Documents API

    JSON已经被开发者在很多场景中频繁使用,但是其实将Cassandra用于JSON或其他面向文档的用例并不容易. 为了让开发者在使用原生的JSON的同时还能享受Cassandra带来的可靠性和伸缩性, ...

  8. HotSpot类模型之ArrayKlass

    上一篇分析了 HotSpot类模型之InstanceKlass ,这次主要分析表示java数组类型的C++类. 1.ArrayKlass类 ArrayKlass继承自Klass,是所有数组类的抽象基类 ...

  9. CentOS 6.10 安装mysql

    1.检查是否安装有mysql rpm -qa | grep mysql 使用yum remove 包  的方式删除干净 2.下载yum Repository wget -c  http://dev.m ...

  10. java的常用定时任务的几种方式

    Java基本的定时任务,一般有这几种方式:一.Timer 1 public class Timer{ 2 static int index=0; 3 public static void main(S ...