树边,前向边,后向边,横叉边

转载 2016年05月31日 09:34:06

转自http://www.gonglin91.com/dfs-graph-edge/

树边,前向边,后向边,横叉边,应该说,不是一个图本身有的概念,应该是图进行DFS时才有的概念。图进行DFS会得到一棵DFS树(森林),在这个树上才有了这些概念。对图进行DFS,可以从任意的顶点开始,遍历的方式也是多样的,所以不同的遍历会得到不同的DFS树,进而产生不同的树边,前向边,后向边,横叉边。所以这4种边,是一个相对的概念。
在图的遍历中,往往设置了一个标记数组vis的bool值来记录顶点是否被访问过。但有些时候需要改变vis值的意义。令vis具有3种值并表示3种不同含义
vis = 0,表示该顶点没没有被访问
vis = 1,表示该顶点已经被访问,但其子孙后代还没被访问完,也就没从该点返回
vis = 2,,表示该顶点已经被访问,其子孙后代也已经访问完,也已经从该顶点返回
可以vis的3种值表示的是一种顺序关系和时间关系

《算法导论》334页有这4种边的准确定义,在此不累述
DFS过程中,对于一条边u->v
vis[v] = 0,说明v还没被访问,v是首次被发现,u->v是一条树边
vis[v] = 1,说明v已经被访问,但其子孙后代还没有被访问完(正在访问中),而u又指向v?说明u就是v的子孙后代,u->v是一条后向边,因此后向边又称返祖边
vis[v] = 3,z说明v已经被访问,其子孙后代也已经全部访问完,u->v这条边可能是一条横叉边,或者前向边

注意:树边,后向边,前向边,都有祖先,后裔的关系,但横叉边没有,u->v为横叉边,说明在这棵DFS树中,它们不是祖先后裔的关系它们可能是兄弟关系,堂兄弟关系,甚至更远的关系,如果是dfs森林的话,u和v甚至可以在不同的树上

在很多算法中,后向边都是有作用的,但是前向边和横叉边的作用往往被淡化,其实它们没有太大作用。


树边,前向边,后向边,横叉边

原文地址:树边,前向边,后向边,横叉边 树边,前向边,后向边,横叉边,应该说,不是一个图本身有的概念,应该是图进行DFS时才有的概念。图进行DFS会得到一棵DFS树(森林),在这个树上 才有...
  • u014665013
  • u014665013
  • 2016年05月09日 10:48
  • 2060

深度优先遍历之树边,前向边,回边,横跨边

根据在有向图G上进行深度优先遍历所产生的深度优先森林,可以把图中的边分为四类: (1)树边:是DFS森林的实际组成部分。如果顶点v是在探测边(u,v)时首次被发现的,那么(u,v)就是一条树边。 ...
  • wshish920907
  • wshish920907
  • 2017年06月15日 11:40
  • 1049

树边,前向边,后向边,横叉边

原文链接: http://www.gonglin91.com/dfs-graph-edge/ 树边,前向边,后向边,横叉边 树边,前向边,后向边,横叉边,应该...
  • zhan723284893
  • zhan723284893
  • 2014年12月05日 22:43
  • 756

关于tarjan算法的一些理解(割点割边)

首先介绍以下tarjan算法: ---------------------------------------------tarjan算法------------------------------...
  • qq_24451605
  • qq_24451605
  • 2015年07月20日 06:44
  • 2078

深度优先遍历之边的分类

根据在图G上进行深度优先搜索所产生的深度优先森林,可以把图中的边分为四类: (1)树边:是深度优先森林中的边。如果顶点v是在探测边(u,v)时首次被发现的,那么(u,v)就是一条树边。 (2)反向边:...
  • yang20141109
  • yang20141109
  • 2015年10月20日 21:46
  • 890

PrayerOJ1823: 每条边的最小生成树

http://prayer.hustoj.com/problem.php?id=1823 CF上好像也有题 这题其实蛮巧妙的 显然暴力的代码也难搞 那我直接说标算了; 吧原图的最小生成树搞出...
  • largecub233
  • largecub233
  • 2017年02月06日 20:25
  • 246

MST中求任意两点条路径上的最长边…

1、MST任意两点路径上的最长边    这其实是在求次小生成树 , 因为我们可以知道 , 次小生成树和最小生成树之间只有一条边不一样 , 因此我们只需要枚举不在最小生成树中边 , 同时我也要求出该两点...
  • zengchenacmer
  • zengchenacmer
  • 2013年12月14日 20:06
  • 1005

(最小生成树(并查集加边法))2015网选,hdu5441 Travel

/* 题目:1005.Travel 链接:http://acm.hdu.edu.cn/showproblem.php?pid=5441 题目大意:给出n个顶点、m条边、k个x值,每条边有相应的权值;对...
  • better_life30
  • better_life30
  • 2015年09月14日 11:41
  • 472

Android边录边播应用

1.Android.mk LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE_TAGS := optional LOCA...
  • tankai19880619
  • tankai19880619
  • 2013年01月24日 15:03
  • 7296

语音边录边传实现方案

这几天一直在做语音消息相关需求,顺便整理下语音分片上传的流程。 这里的语音是指即时通讯中的语音消息,语音边录边传就是在语音的录制过程中上传语音文件而不是等录制完成再一次性上传,这么做的目的是减少文件...
  • jolin2017
  • jolin2017
  • 2017年03月05日 19:59
  • 434
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:树边,前向边,后向边,横叉边
举报原因:
原因补充:

(最多只允许输入30个字)