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

#include <topological_sort.H>

Métodos públicos

 Q_Topological_Sort (SA &&__sa=SA())
 
 Q_Topological_Sort (SA &__sa)
 
template<template< class > class List>
List< typename GT::Node * > perform (GT &g)
 
template<template< class > class RankList = DynDlist, template< class > class List = DynList>
RankList< List< typename
GT::Node * > > 
ranks (GT &g)
 
void operator() (GT &g, DynDlist< DynList< typename GT::Node * >> &list)
 
void operator() (GT &g, DynList< DynList< typename GT::Node * >> &list)
 
void operator() (GT &g, DynDlist< typename GT::Node * > &list)
 Sobrecarga de () por razones compatibilidad.
 

Descripción detallada

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

Calcula un ordenamiento topológico para el digrafo mediante un recorrido en amplitud.

Q_Topdological_Sort recorre en amplitud los nodos de un digrafo g y efectúa un ordenamiento topológico cuyo resultado lo almacena en una lista dada.

Documentación de las funciones miembro

template<class GT , class SA = Dft_Show_Arc<GT>>
template<template< class > class List>
List<typename GT::Node*> Aleph::Q_Topological_Sort< GT, SA >::perform ( GT &  g)
inline

Retorna un ordenamiento topológico en amplitud.

Parámetros
[in]gel digrafo acíclico.
Devuelve
lista de nodos correspondiente al ordenamiento topológico.
Excepciones
bad_allocsi no hay suficiente memoria para insertar en list o en la cola interna que se requiere para recorrer el digrafo en amplitud.
domain_errorsi g no es un digrafo.
Nota
La rutina no verifica si g es en efecto un digrafo acíclico.

Hace referencia a Aleph::DynListQueue< T >::get(), Aleph::Filter_Iterator< Container, It, Show_Item >::next(), NODE_COUNTER y Aleph::DynListQueue< T >::put().

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

template<class GT , class SA = Dft_Show_Arc<GT>>
template<template< class > class RankList = DynDlist, template< class > class List = DynList>
RankList<List<typename GT::Node*> > Aleph::Q_Topological_Sort< GT, SA >::ranks ( GT &  g)
inline

Retorna el ordenamiento topológico en amplitud por rangos.

Parámetros
[in]gel digrafo acíclico.
[out]rankslista de rangos correspondiente al ordenamiento topológico. Cada rango especifica un conjunto de nodos que pueden mirarse en paralelo.
Excepciones
bad_allocsi no hay suficiente memoria para insertar en list o en la cola interna que se requiere para recorrer el digrafo en amplitud.
domain_errorsi g no es un digrafo.
Nota
La rutina no verifica si g es en efecto un digrafo acíclico.

Hace referencia a Aleph::DynListQueue< T >::get(), Aleph::Filter_Iterator< Container, It, Show_Item >::next(), NODE_COUNTER y Aleph::DynListQueue< T >::put().

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


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

Leandro Rabindranath León