跳到内容

is_forest() 确定图是否为森林,并可以选择性地返回其组件的一组可能的根顶点。

用法

is_forest(graph, mode = c("out", "in", "all", "total"), details = FALSE)

参数

graph

igraph 图对象

mode

是否在有向图中考虑边的方向。 ‘all’ 忽略边的方向; ‘out’ 要求边从根向外定向,‘in’ 要求边朝向根定向。

details

是仅返回图是否为树 (FALSE),还是同时返回可能的根 (TRUE)

detailsFALSE 时,一个逻辑值,指示图是否为树。 当 detailsTRUE 时,一个包含两个条目的命名列表

res

指示图是否为树的逻辑值。

root

树的根顶点; 如果该图不是树,则未定义。

详细信息

如果无向图没有环,则它是一个森林。 在有向图的情况下,一个可能的附加要求是每个树中的边都远离根(外向树或树状图)或所有边都朝向根(内向树或反树状图)。 可以使用 mode 参数控制此测试。

按照惯例,空图(即没有顶点的图)被认为是森林。

参见

is_forest().

示例


g <- make_tree(3) + make_tree(5, 3)
is_forest(g)
#> [1] TRUE
is_forest(g, details = TRUE)
#> $res
#> [1] TRUE
#> 
#> $roots
#> + 2/8 vertices, from 685b9af:
#> [1] 1 4
#>