主要内容

transclosure

传递闭包

描述

例子

H= transclosure (G)返回传递闭包的图G作为一个新的图,H。的节点H是相同的吗G,但H有额外的边缘。如果有一个路径节点到节点jG,然后有一个节点之间的边和节点jH。对于油印多个相同的两个节点之间的边,输出图替换这些单一的边缘。

例子

全部折叠

创建和策划一个有向图。

G =有向图((1 2 3 4 4 4 5 5 5 6 7 8],[2 3 5 1 3 6 6 7 8 9 9 9]);情节(G)

图包含一个坐标轴对象。坐标轴graphplot类型的对象包含一个对象。

找到图的传递闭包G和策划结果图。H包含相同的节点G,但额外的边缘。

H = transclosure (G);情节(H)

图包含一个坐标轴对象。坐标轴graphplot类型的对象包含一个对象。

传递闭包的信息H可以用来回答有关原始图可达性问题,G

确定节点G可以达到从节点1。这些节点是节点1的继任者传递闭包的图,H

N =继任者(H, 1)
N =7×12 3 5 6 7 8 9

创建和策划一个有向图。

s = (1 1 2 4 2 3 4 5);t = (2 5 4 3 4 5 6 6);G =有向图(s, t);情节(G,“布局”,“子”)

图包含一个坐标轴对象。坐标轴graphplot类型的对象包含一个对象。

计算的邻接矩阵的传递闭包G。结果是一个可达性矩阵,非零值表明哪些节点可以从每个节点。

D = transclosure (G);R =全(邻接(D))
R =6×60 1 1 1 1 1 0 0 1 1 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0

例如,回答这个问题“哪个节点是可及节点3 ?”,你可以看第三行矩阵。这一行只显示节点从节点可获得5和6是3:

找到(R (3)):
ans =1×25个6

输入参数

全部折叠

输入图,指定为一个有向图对象。使用有向图创建一个有向图对象。

例子:2 G =有向图([1],[2 3])

输出参数

全部折叠

传递闭包的G,返回有向图对象。表G.Nodes复制到H,但任何属性G.Edges是下降了。

使用继任者(H, n)确定节点G可及的节点n

更多关于

全部折叠

传递闭包

传递闭包的图描述了节点之间的路径。如果有一个路径节点到节点j在一个图表,那么节点之间存在一条边和节点j传递闭包的图。因此,对于一个给定的节点图,传递闭包将任何可及节点到该节点的直接继承人(后代)。

版本历史

介绍了R2015b