Click or drag to resize
EulerianPath Class

The EulerianPath class represents a data type for finding an Eulerian path in a graph. An Eulerian path is a path (not necessarily simple) that uses every edge in the graph exactly once.

This implementation uses a nonrecursive depth-first search. The constructor runs in O(E + V) time, and uses O(E + V) extra space, where E is the number of edges and V the number of vertices All other methods take O(1) time.

To compute Eulerian cycles in graphs, see . To compute Eulerian cycles and paths in digraphs, see and .

Inheritance Hierarchy
SystemObject
  Algs4NetEulerianPath

Namespace: Algs4Net
Assembly: Algs4Net (in Algs4Net.dll) Version: 1.0.0.0 (1.0.0.0)
Syntax
C#
public class EulerianPath

The EulerianPath type exposes the following members.

Constructors
  NameDescription
Public methodEulerianPath
Computes an Eulerian path in the specified graph, if one exists.
Top
Properties
  NameDescription
Public propertyHasEulerianPath
Returns true if the graph has an Eulerian path.
Top
Methods
  NameDescription
Public methodStatic memberMainTest
Demo test the EulerianPath data type.
Public methodPath
Returns the sequence of vertices on an Eulerian path.
Top
Remarks

For additional documentation, see Section 4.1 of Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.

This class is a C# port from the original Java class EulerianPath implementation by the respective authors.

See Also