【数据结构】求有向图强连通分量的方法

求有向图强连通分量的方法

首先强连通分量的定义是:

在有向图中,若有一对顶点V和W,从V到W和从W到V之间都有路径,则称这两个顶点式强连通的。若图中任意一对顶点都是强连通的,则称此图为强连通图。有向图中的极大强连通子图称为有向图的强连通分量。

值得注意的是,由于单个顶点不存在顶点之间的路径问题,所以单个顶点构成的图是强连通图,称为平凡的强连通图。

由定义可知,有向图中的极大强连通子图称为有向图的强连通分量,强调在有向图中每一对顶点间都存在双向路径。

因此求强连通分量的数量,可以找到入度或出度为0的顶点,然后删除该顶点和其对应的弧,直到不存在入度或出度为0的顶点。

删掉的顶点以及剩下的有向图,就是强连通分量

例如上图,将1号结点以及对应的弧删掉后,剩下的图找不到入度或出度为0的顶点,因此改图的强连通分量有2个

相关推荐
天若有情6731 小时前
【数据结构】生活中的数据结构:从吃饭与编程看栈与队列思维
数据结构·生活
刚入坑的新人编程2 小时前
暑期算法训练.11
数据结构·c++·算法·leetcode·链表
草莓熊Lotso2 小时前
【数据结构初阶】--二叉树(六)
c语言·数据结构·经验分享·笔记·其他
lifallen2 小时前
Disruptor高性能基石:Sequence并发优化解析
java·数据结构·后端·算法
朝朝又沐沐4 小时前
算法竞赛阶段二-数据结构(38)数据结构动态链表list
数据结构·算法·链表
死也不注释4 小时前
【在Unity游戏开发中Dictionary、List介绍】
数据结构·游戏·unity·游戏引擎·list·游戏程序
geovindu4 小时前
ArKTS:List 数组
数据结构·list·harmonyos
Shun_Tianyou5 小时前
Python Day20 os模块 和 文件操作 及 例题分析
开发语言·数据结构·python·算法
冲帕Chompa5 小时前
今日矩阵系列
数据结构·算法·矩阵
Fengshana7 小时前
王道考研-数据结构-01
数据结构·考研