我正在尝试解决一个问题,以设计一种算法来确定直接图是否为半连接图。有人说可以通过对图中的每个SCC进行拓扑排序来完成。 SCC保证为DAG。但是,我认为SCC图必须是一个圆,为什么它是DAG,因为DAG表示没有圆。
答案 0 :(得分:0)
您误解了论点。
假设您有一个包含点的图
A1 <--> A2 <--> A3 --> B1 <--> B2 --> C1 <--> C2
和A1 A2 A3
,B1 B2
,C1, C2
是SCC。
然后,您将A1 A2 A3
视为单点A
。连接到A1 A2 A3
之一的任何节点都被视为连接到A
,从A1 A2 A3
之一连接的任何节点都被视为从A
连接。将点合并到B
,C
因此它变成了A --> B --> C
。保证这是DAG。