edgegraph.traversal.depthfirst.dft_iterative

Contents

edgegraph.traversal.depthfirst.dft_iterative#

edgegraph.traversal.depthfirst.dft_iterative(uni, start, direction_sensitive=0, unknown_handling=2, ff_via=None, ff_result=None)#

Perform an iterative depth-first traversal of the given universe, starting at the given vertex.

This algorithm used is similar to that in [KlTa05], algorithm 3.12. Slight modifications have been made to preclude re-visited vertices in the final list. This is a iterative implementation that returns a list of Vertex objects, in the order of the traversal performed.

Parameters:
  • uni (Universe) – The universe to traverse.

  • start (Vertex) – Vertex to start searching at.

Returns:

The vertices visited during traversal.

Raises:

ValueError – if the start vertex is not a member of the specified universe, or if the universe is empty.

Return type:

list[Vertex]