Aleph-w  1.9
General library for algorithms and data structures
Aleph::Topological_Sort< GT, Itor, SA > Class Template Reference

#include <topological_sort.H>

Public Member Functions

 Topological_Sort (SA &&__sa=SA()) noexcept(std::is_nothrow_move_assignable< SA >::value)
 
 Topological_Sort (SA &__sa) noexcept(std::is_nothrow_copy_assignable< SA >::value)
 
template<template< class > class List>
List< typename GT::Node * > perform (const GT &g)
 
void operator() (const GT &g, DynDlist< typename GT::Node *> &list)
 

Detailed Description

template<class GT, template< typename, class > class Itor = Out_Iterator, class SA = Dft_Show_Arc<GT>>
class Aleph::Topological_Sort< GT, Itor, SA >

Calcula un ordenamiento topológico para un digrafo en modo sufijo.

Topological_Sort recorre recursivamente en profundidad y en sufijo los nodos de un grafo y efectúa un ordenamiento topológico cuyo resultado lo almacena un la lista dada en parámetro.

Member Function Documentation

◆ operator()()

template<class GT , template< typename, class > class Itor = Out_Iterator, class SA = Dft_Show_Arc<GT>>
void Aleph::Topological_Sort< GT, Itor, SA >::operator() ( const GT &  g,
DynDlist< typename GT::Node *> &  list 
)
inline

Sobrecarga de () sólo por razones de compatibilidad con versiones anteriores

+ Here is the caller graph for this function:

◆ perform()

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

Retorna un ordenamiento topológico por sufijo.

Parameters
[in]gel digrafo acíclico.
Returns
una lista de nodos correspondiente al ordenamiento topológico.
Exceptions
bad_allocsi no hay suficiente memoria para insertar en list.
Note
La rutina no verifica si g es en efecto un digrafo acíclico.

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

Leandro Rabindranath León