File: all_simple_paths.Rd

package info (click to toggle)
r-cran-igraph 2.1.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 27,044 kB
  • sloc: ansic: 204,981; cpp: 21,711; fortran: 4,090; yacc: 1,229; lex: 519; sh: 52; makefile: 8
file content (64 lines) | stat: -rw-r--r-- 1,807 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/paths.R
\name{all_simple_paths}
\alias{all_simple_paths}
\title{List all simple paths from one source}
\usage{
all_simple_paths(
  graph,
  from,
  to = V(graph),
  mode = c("out", "in", "all", "total"),
  cutoff = -1
)
}
\arguments{
\item{graph}{The input graph.}

\item{from}{The source vertex.}

\item{to}{The target vertex of vertices. Defaults to all vertices.}

\item{mode}{Character constant, gives whether the shortest paths to or
from the given vertices should be calculated for directed graphs. If
\code{out} then the shortest paths \emph{from} the vertex, if \verb{in}
then \emph{to} it will be considered. If \code{all}, the default, then
the corresponding undirected graph will be used, i.e. not directed paths
are searched. This argument is ignored for undirected graphs.}

\item{cutoff}{Maximum length of the paths that are considered. If negative,
no cutoff is used.}
}
\value{
A list of integer vectors, each integer vector is a path from
the source vertex to one of the target vertices. A path is given by its
vertex ids.
}
\description{
This function lists all simple paths from one source vertex to another
vertex or vertices. A path is simple if contains no repeated vertices.
}
\details{
Note that potentially there are exponentially many paths between two
vertices of a graph, and you may run out of memory when using this
function, if your graph is lattice-like.

This function ignores multiple and loop edges.
}
\examples{

g <- make_ring(10)
all_simple_paths(g, 1, 5)
all_simple_paths(g, 1, c(3, 5))

}
\seealso{
Other paths: 
\code{\link{diameter}()},
\code{\link{distance_table}()},
\code{\link{eccentricity}()},
\code{\link{graph_center}()},
\code{\link{radius}()}
}
\concept{paths}
\keyword{graphs}