Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::Test_For_Path< GT, SA > Class Template Reference

verfica si existe un camino entre dos nodos. More...

#include <tpl_test_path.H>

Public Member Functions

 Test_For_Path (SA __sa=SA())
 
bool operator() (const GT &g, typename GT::Node *start_node, typename GT::Node *end_node)
 Invoca a la prueba de existencia de camino entre dos nodos.
 

Private Member Functions

bool test_path (typename GT::Node *curr)
 
bool test_path (const GT &g, typename GT::Node *src, typename GT::Node *dest)
 

Private Attributes

SA sa
 
GT::Nodetgt = nullptr
 

Detailed Description

template<class GT, class SA = Dft_Show_Arc<GT>>
class Aleph::Test_For_Path< GT, SA >

verfica si existe un camino entre dos nodos.

Test_For_Path explora en profundidad el grafo g a partir de un nodo de inicio en búsqueda de un camino que depare en uno destino.

La clase toma dos parámetros tipo:

  1. GT: el tipo de grafo, el cual debe ser derivado de List_Graph.
  2. SA: clase que se encarga de mostrar el arco. Internamente, la función emplea el iterador filtro Node_Arc_Iterator (basado en Filter_Iterator) para recorrer los arcos de cada nodo. SA es el la clase que determina si el arco debe o no mostrarse al recorrido.

El bit test_path es utilizado para marcar los nodos y arcos visitados durante la búsqueda.

See also
find_path_depth_first() find_path_breadth_first()

Definition at line 67 of file tpl_test_path.H.

Constructor & Destructor Documentation

◆ Test_For_Path()

template<class GT , class SA = Dft_Show_Arc<GT>>
Aleph::Test_For_Path< GT, SA >::Test_For_Path ( SA  __sa = SA())
inline

Definition at line 125 of file tpl_test_path.H.

Member Function Documentation

◆ operator()()

template<class GT , class SA = Dft_Show_Arc<GT>>
bool Aleph::Test_For_Path< GT, SA >::operator() ( const GT g,
typename GT::Node start_node,
typename GT::Node end_node 
)
inline

Invoca a la prueba de existencia de camino entre dos nodos.

Parameters
[in]gel grafo a buscar camino.
[in]start_nodepuntero al nodo origen del camino.
[in]end_nodepuntero a nodo destino del camino.
Returns
true si existe un camino entre start_node y end_node.

Definition at line 134 of file tpl_test_path.H.

References Aleph::maps(), and Aleph::Test_For_Path< GT, SA >::test_path().

◆ test_path() [1/2]

◆ test_path() [2/2]

Member Data Documentation

◆ sa

template<class GT , class SA = Dft_Show_Arc<GT>>
SA Aleph::Test_For_Path< GT, SA >::sa
private

◆ tgt

template<class GT , class SA = Dft_Show_Arc<GT>>
GT::Node* Aleph::Test_For_Path< GT, SA >::tgt = nullptr
private

The documentation for this class was generated from the following file: