has_eulerian_path {igraph}R Documentation

Find Eulerian paths or cycles in a graph

Description

has_eulerian_path and has_eulerian_cycle checks whether there is an Eulerian path or cycle in the input graph. eulerian_path and eulerian_cycle return such a path or cycle if it exists, and throws an error otherwise.

Usage

has_eulerian_path(graph)

has_eulerian_cycle(graph)

eulerian_path(graph)

eulerian_cycle(graph)

Arguments

graph

An igraph graph object

Details

has_eulerian_path decides whether the input graph has an Eulerian path, i.e. a path that passes through every edge of the graph exactly once, and returns a logical value as a result. eulerian_path returns a possible Eulerian path, described with its edge and vertex sequence, or throws an error if no such path exists.

has_eulerian_cycle decides whether the input graph has an Eulerian cycle, i.e. a path that passes through every edge of the graph exactly once and that returns to its starting point, and returns a logical value as a result. eulerian_cycle returns a possible Eulerian cycle, described with its edge and vertex sequence, or throws an error if no such cycle exists.

Value

For has_eulerian_path and has_eulerian_cycle, a logical value that indicates whether the graph contains an Eulerian path or cycle. For eulerian_path and eulerian_cycle, a named list with two entries:

epath

A vector containing the edge ids along the Eulerian path or cycle.

vpath

A vector containing the vertex ids along the Eulerian path or cycle.

Examples


g <- make_graph( ~ A-B-C-D-E-A-F-D-B-F-E )

has_eulerian_path(g)
eulerian_path(g)

has_eulerian_cycle(g)
## Not run: eulerian_cycle(g)


[Package igraph version 1.3.5 Index]