|
|
GT_Arc * | insert (GT_Arc *e) |
| | Inserta en el Ãndice el arco a.
|
| |
| GT_Arc * | search (void *src, void *tgt) |
| |
| GT_Arc * | search_directed (void *src, void *tgt) |
| |
| GT_Arc * | search (GT_Arc *a) |
| |
| GT_Arc * | insert_in_graph (GT_Node *src, GT_Node *tgt, const GT_Arc_Type &info) |
| |
| GT_Arc * | insert_in_graph (GT_Node *src, GT_Node *tgt, GT_Arc_Type &&info=GT_Arc_Type()) |
| |
|
void | remove (GT_Arc *e) |
| | Elimina del Ãndice el arco e.
|
| |
|
void | remove_from_graph (GT_Arc *a) |
| | Elimina del Ãndice y del grafo el arco a.
|
| |
|
void | clear_index () |
| | Elimina todos los arcos del Ãndice.
|
| |
|
void | build_index () |
| | Inserta todos los arcos del grafo en el Ãndice.
|
| |
| | IndexArc (GT &__g, bool with_init=true, SA &&__sa=SA()) |
| |
| | IndexArc (GT &__g, bool with_init, SA &__sa) |
| |
|
size_t | size () const |
| | Retorna la cantidad de arcos que contiene el Ãndice.
|
| |
template<class GT, template< class, class > class Tree = Rand_Tree, class SA = Dft_Show_Arc<GT>>
class Aleph::IndexArc< GT, Tree, SA >
Construye un Ãndice de arcos para su rápida búsqueda y recuperación dado sus nodos.
IndexArc indiza los arcos de un grafo según el par de nodos que el arco relaciona. La idea es implementar la detección de existencia de arco y su recuperación en tiempo logarÃtmico.
La clase recibe los siguientes parámetros tipo:
- GT: el tipo de grafo basado en List_Graph.
- Tree: el tipo de árbol binario de búsqueda usado internamente para indizar las claves. Por omisión se usan treaps.
- Warning
- Para que la compilación correcta es imperativo que el exista el constructor GT::Arc(void * src, void * tgt, GT::Arc_Type). Del mismo modo, también debe existir el constructor por omisión GT::Arc_Type().
- See also
- IndexNode Index_Graph
- Author
- Leandro Rabindranath León (lrleon en ula punto ve)
-
Alejandro Mujica (aledrums en gmail punto com)