Aleph-w  1.5a.2
Biblioteca general de algoritmos y estructuras de datos
 Todo Clases Archivos Funciones Variables 'typedefs' Enumeraciones Amigas Grupos Páginas
Referencia de la plantilla de la Clase Aleph::Bit_Mat_Graph< GT, SA >

#include <tpl_matgraph.H>

Tipos públicos

typedef GT Graph_Type
 El tipo de grafo GT.
 
typedef GT::Node Node
 El tipo de nodo en GT.
 
typedef GT::Arc Arc
 El tipo de arco en GT.
 

Métodos públicos

const size_t & get_num_nodes () const
 Retorna el número de nodos del grafo (dimensión de la matriz).
 
 Bit_Mat_Graph ()
 Constructor vacío.
 
 Bit_Mat_Graph (GT &g)
 
 Bit_Mat_Graph (const Bit_Mat_Graph &bitmat)
 Constructor copia.
 
 Bit_Mat_Graph (const size_t &dim)
 Constructor especificando una dimensión.
 
void set_list_graph (GT &g)
 
GT * get_list_graph ()
 
Bit_Mat_Graphoperator= (const Bit_Mat_Graph &bitmat)
 Asignación de matriz.
 
Bit_Mat_Graphoperator= (GT &g)
 Asignación de grafo representado con listas de adyacencia.
 
Nodeoperator() (const long &i)
 
long operator() (Node *node) const
 
Proxy operator() (const long &i, const long &j)
 
Proxy operator() (const long &i, const long &j) const
 
Proxy operator() (Node *src_node, Node *tgt_node)
 
Proxy operator() (Node *src_node, Node *tgt_node) const
 

Descripción detallada

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

Matriz de bit de adyacencia de un grafo.

El tipo Bit_Mat_Graph define la más simple matriz de adyacencia sobre un grafo. Al igual que los tipos de matrices de adyacencia de Aleph, Bit_Mat_Graph puede asociar un grafo representado con listas de adyacencia basado sobre GT, pero a diferencia de las matrices anteriores, esta asociación no es obligatoria.

Se trata de una matriz de bits implementada mediante el tipo BitArray. Una entrada (i,j) con valor 1 indica presencia del arco, mientras que el valor 0 indica ausencia.

Este tipo de matriz ocupa toda la memoria posible. Es decir, la dimensión de la matriz dividida entre 8.

Ver también
BitArray warshall_compute_transitive_clausure()

Documentación del constructor y destructor

template<class GT, class SA = Dft_Show_Arc<GT>>
Aleph::Bit_Mat_Graph< GT, SA >::Bit_Mat_Graph ( GT &  g)
inline

Constructor a partir de un grafo g representado con listas de adyacencia.

Documentación de las funciones miembro

template<class GT, class SA = Dft_Show_Arc<GT>>
GT* Aleph::Bit_Mat_Graph< GT, SA >::get_list_graph ( )
inline

Retorna un puntero al grafo representado con listas de adyacencia; si el valor es NULL, entonces no hay grafo asociado.

Referenciado por Aleph::warshall_compute_transitive_clausure().

+ Gráfico de llamadas a esta función:

template<class GT, class SA = Dft_Show_Arc<GT>>
Node* Aleph::Bit_Mat_Graph< GT, SA >::operator() ( const long &  i)
inline

Retorna el puntero al nodo en la representación con listas de adyacencia correspondiente al índice i.

template<class GT, class SA = Dft_Show_Arc<GT>>
long Aleph::Bit_Mat_Graph< GT, SA >::operator() ( Node node) const
inline

Retorna el índice en la matriz del nodo en la representación con listas de adyacencia.

template<class GT, class SA = Dft_Show_Arc<GT>>
void Aleph::Bit_Mat_Graph< GT, SA >::set_list_graph ( GT &  g)
inline

Asocia la matriz de bits al grafo g representado con listas de adyacencia.

Hace referencia a Aleph::BitArray::set_size().

Referenciado por Aleph::warshall_compute_transitive_clausure().

+ Gráfico de llamadas para esta función:

+ Gráfico de llamadas a esta función:


La documentación para esta clase fue generada a partir del siguiente fichero:

Leandro Rabindranath León