主要内容

bctree

Block-cut树图

描述

例子

= bctree (G返回图的块切割树G,使每个节点在代表一个双连通分量减少顶点G.表示切割顶点的节点连接到表示包含该切割顶点的双连接组件的所有节点。

例子

印第安纳州) = bctree (G的节点映射的数字节点索引的向量G进入节点

例子

全部折叠

计算图的块切割树,查看生成的节点属性,然后突出显示图中切割的顶点。

创建并绘制图表。

S = [1 1 2 2 3 4 4 5 6 6 7 7 8];T = [2 3 3 4 4 5 7 6 7 10 8 9 9];图G = (s, t);p =情节(G);

Figure包含一个轴对象。axis对象包含一个graphplot类型的对象。

计算图的分块树,查看节点属性。

树= bctree (G);树。节点
ans =7×3表IsComponent ComponentIndex CutVertexIndex ___________ ______________ ______________ true 1 0 true 2 0 true 3 0 true 4 0 false 0 4 false 0 6 false 0 7

用红色菱形标记表示被切割顶点的节点来绘制块切割树。圆形节点表示原图中的双连通分量。

p2 =情节(树,“MarkerSize”9);突出(p2, 7“标记”' d '“NodeColor”“r”

Figure包含一个轴对象。axis对象包含一个graphplot类型的对象。

创建并绘制图表。

S = [1 1 2 2 3 4 4 5 6 6 7 7 8];T = [2 3 3 4 4 5 7 6 7 10 8 9 9];图G = (s, t);p =情节(G);

Figure包含一个轴对象。axis对象包含一个graphplot类型的对象。

计算块切树tr,并指定第二个输出9返回节点索引。

(tr, ix) = bctree (G)
tr = graph with properties:边:[6x1表]节点:[7x3表]
第九=1×104 4 4 5 3 6 7 1 1 2

每个索引第九(j)表示节点的块切割树中的节点j在输入图中。例如,节点4在tr中的组件G它包含节点1、2和3,所以前三个条目9都是4。

输入参数

全部折叠

输入图形,指定为对象。使用创建无向图对象。

例子:图G =(1、2)

输出参数

全部折叠

块切树图,返回为对象。为每个切点包含一个节点G中的每个双连通组件对应一个节点G.节点表树。节点包含描述每个节点表示什么的附加节点属性:

  • tree.Nodes.IsComponent(我)—Value = logical1真正的如果节点表示双连接组件。否则,该值等于且符合逻辑0).

  • tree.Nodes.ComponentIndex(我)—节点表示的组件索引.如果是node,则为0表示切割顶点。

  • tree.Nodes.CutVertexIndex(我)- Index,表示节点所表示的切割顶点.如果是node,则为0表示双连接组件。

节点索引,作为数字向量返回。印第安纳州(我)节点是否在输出图中代表节点在输入图中G

  • 如果节点图中是切点吗G,然后印第安纳州(我)关联的节点是否在

  • 如果节点不是切割顶点,而是属于图中的双连通分量之一G,然后印第安纳州(我)中的节点表示双连接组件。

  • 如果节点图中是孤立节点吗G,然后印第安纳州(我)是零。

更多关于

全部折叠

双连通分量

图的双连通分量是最大双连通子图。如果一个图不包含任何切点,则它是双连通的。

将一个图分解成它的双连通组件有助于度量图的连通程度。您可以将任何连通图分解为双连通组件树,称为block-cut树.树中的块连接在共享的顶点上,即被切割的顶点。

插图描绘了:

  • (a)一个有11个节点的无向图。

  • (b)图的五个双连通分量,其所属的每个分量对应原图的切顶点着色。

  • (c)图的分割树,其中每个双连通组件包含一个节点(大圆),每个切割顶点包含一个节点(小的多色圆)。在块切割树中,一条边将每个切割顶点连接到它所属的每个分量。

减少顶点

也被称为接合点,切割顶点是图节点,其移除增加了连接组件的数量。在前面的图中,切割顶点是那些具有不止一种颜色的节点:节点4、6和7。

介绍了R2016b