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::Inconnected_Components< GT, SA >

#include <tpl_components.H>

Métodos públicos

 Inconnected_Components (SA &&__sa=SA())
 
 Inconnected_Components (SA &__sa)
 
template<template< class > class List>
void compute_blocks (GT &g, List< GT > &list)
 
template<template< class > class List>
void compute_lists (GT &g, List< List< typename GT::Node * > > &list)
 
void operator() (GT &g, DynDlist< GT > &list)
 
void operator() (GT &g, DynDlist< DynDlist< typename GT::Node * > > &list)
 
void operator() (GT &g, DynList< GT > &list)
 
void operator() (GT &g, DynList< DynList< typename GT::Node * > > &list)
 

Descripción detallada

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

Calcula los componentes inconexos de un grafo.

La clase Inconnected_Components toma un grafo g, "supuestamente inconexo" calcula sus subgrafos o componentes inconexos y los almacena en una lista dinámica de subgrafos mapeados, tanto en los nodos como en los arcos. El énfasis en el supuesto carácter conexo del grafo se debe a que si el grafo no fuese conexo, entonces la lista resultante contendría un solo elemento correspondiente al grafo copia mapeado de g. Si este fuese el caso, entonces es preferible hacerlo con la función copy_graph().

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.
Ver también
copy_graph()

Documentación de las funciones miembro

template<class GT , class SA = Dft_Show_Arc<GT>>
void Aleph::Inconnected_Components< GT, SA >::operator() ( GT &  g,
DynList< GT > &  list 
)
inline

Invoca a la determinación de los componentes inconexos.

La función se vale del bit build_subtree para marcar nodos y arcos visitados.

El algoritmo internamente descubre los componentes mediante búsquedas en profundidad.

Parámetros
[in]gel grafo sobre el cual se desea calcular sus bloques.
[out]listlista de subgrafos mapeados a g con los subgrafos o componentes inconexos de g.
Excepciones
bad_allocsi no hay memoria para construir algún bloque o insertar en la lista.
template<class GT , class SA = Dft_Show_Arc<GT>>
void Aleph::Inconnected_Components< GT, SA >::operator() ( GT &  g,
DynList< DynList< typename GT::Node * > > &  list 
)
inline

Calcula los componentes inconexos por listas de listas de nodos.

La función se vale del bit build_subtree para marcar nodos y arcos visitados.

El algoritmo internamente descubre los componentes mediante búsquedas en profundidad.

Parámetros
[in]gel grafo sobre el cual se desea calcular sus bloques.
[out]listlista de listas de nodos; cada lista contiene los nodos que son parte de un componente conexo.
Excepciones
bad_allocsi no hay memoria para construir algún bloque o insertar en la lista.

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

Leandro Rabindranath León