首页 > 其他分享 >有向无环图

有向无环图

时间:2023-11-25 19:23:15浏览次数:19  
标签:物体 无环 离散数学 环图 集合 顶点

一、什么是有向无环图(DGA)

首先我们需要知道怎样才算一个图,这里的图指的是离散数学中的图。在我们的认知中,两点可以确定一条直线,多条直线就能组成一张图。

当我们用集合来表示的时候,图就是由点的有穷非空集合以及线的集合所组成。在离散数学中,图是用于表示物体与物体之间关系的一种结构,

然后呢,将物体抽象为“顶点”或者“节点”,物体间的关系抽象为边。这时我们用符号来表示这个集合G = (V,E),V代表顶点的集合,E就代表

边的集合。

接下来就是正题,有向无环图。有向很好理解,就是两个顶点之间是有方向的,比如A指向B。那么什么是无环呢,假设从A到B有一条边,并且方向是从A指向B

然后B又指向另外一个顶点构成一张有向图(图中两个顶点之间都有方向)。简单理解就是,我从A出发,不管我怎么走我都不能回到A,这就是无环,那么反之

只要我有一条路能让我回到我出发的那个顶点就表示有环。

上图就是一个有向无环图,需要注意的是无环的定义,不能简单的认为顶点之间不能围成一个环,而是你从一个顶点出发不论怎么走都不能回到起点。

我们以上图的11当做起点,它能到达2,10,9,但是回不到11。

二、有向无环图的一些性质

1.在算法中有向无环图的最短路径或者最长路径通常使用拓扑排序,可以使时间复杂度变为线性的。将顶点拓扑排序后,从前到后遍历每一个顶点,

对于遍历到的顶点,更新其所有出边所到达顶点的长度值。这个时候我们求最短路就只需要选择短的边既可。

2.任何的有向树都能转化为有向无环图,但是反过来则不一定,因为有向无环图中从一个顶点到另外一个顶点有可能存在两条路。

 

标签:物体,无环,离散数学,环图,集合,顶点
From: https://www.cnblogs.com/linx000/p/17855843.html

相关文章

  • 有向无环图节点可见性的使用——蕴含图的切割技巧
    1.分析函数所涉及seen[v]使用  传播实例:求解过程演示_10.48.640112774.cn中的一段输出1decisions:25;decisionvar:-22thesizeoftrailis28.:1-6-27-2-22-23-20-13-10-282529147-318-41617-9524......
  • 环图问题
    环图由一些简单的链和环组成。对于有向图,所有点入度与出度<=2,就是一个环图对于无向图,所有点的度数<=2,就是一个环图环图中所有的链与环互不相交。常见问题:环的大小,个数,路径    这种无序变有序的问题,建图方法:把起点向终点连一条边。每个点入度出度都是1,所以建成......
  • 有向无环图-dfs-797所有可能的路径
    给你一个有n个节点的有向无环图(DAG),请你找出所有从节点0到节点n-1的路径并输出(不要求按特定顺序)graph[i]是一个从节点i可以访问的所有节点的列表(即从节点i到节点graph[i][j]存在一条有向边)。示例1:输入:graph=[[1,2],[3],[3],[]]输出:[[0,1,3],[0,2,3]]解释:有两......
  • HDU1524(博弈--有向无环图SG函数)
    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1524题意:在一个有向无环图上有n个顶点,每一个顶点都只有一个棋子,有两个人,每次根据这个图只能将任意一颗棋子移动一步,如果到某一步玩家不能移动时,那么这个人就输.分析:本题是最典型的有向无环图的博弈,利用dfs把所有顶点的SG值......
  • echarts饼图实现圆环图例修改
    实现效果:代码:constoption={//环形图中间文字title:{text:'1200',subtext:'总户数',textStyle:{fontSize:16,color:'#333',fontWeight:600,},subtextStyle:{fontSize:12,c......
  • highcharts 3D圆环图y轴数据为0 的较多,会出现显示不出来的问题
    问题的效果图如下:  问题原因:好像是数据位置重叠了解决办法:没有找到比较合适的解决办法,最后选择了不显示值为0的,代码如下所示(主要代码已用红色背景显示):plotOptions:{pie:{allowPointSelect:true,cursor:'pointer',......
  • 构造有向无环图
    构造有向无环图给定一个由$n$个点和$m$条边构成的图。不保证给定的图是连通的。图中的一部分边的方向已经确定,你不能改变它们的方向。剩下的边还未确定方向,你需要......
  • Android 启动优化(二) - 有向无环图的原理以及解题思路
    Android启动优化(一)-有向无环图Android启动优化(二)-拓扑排序的原理以及解题思路Android启动优化(三)-AnchorTask使用说明Android启动优化(四)-手把手教你实现An......
  • 生成 有向无环图
    importjava.util.ArrayList;importjava.util.List;/***@authorCC11001100*/publicclassVector<T>{privateTname;privateList<Vector<T>>fro......
  • 1_使用swiper数组对象循环图片遇到的问题
    今天在练习微信小程序的swiper组件时,想用列表循环出图片,发现图片一直没出来,控制台也没有报错,后来仔细一看,原来是语法格式写错了。以下是我列表循环踩过的坑:一:微......