#include <List.H>
Clases | |
class | iterator |
Tipos públicos | |
typedef T | value_type |
El tipo de dato que maneja la lista. | |
typedef list::value_type & | reference |
Tipo referencia a elemento dentro de la lista. | |
typedef const list::value_type & | const_reference |
Tipo referencia constante a elemento dentro de la lista. | |
typedef size_t | size_type |
Tipo numérico para el tamaño de la lista. | |
Métodos públicos | |
list () | |
Instancia una lista vacía. | |
list (const list &c) | |
Instancia una lista copia de c. | |
list (const size_type &num) | |
list (const size_type &num, const T &value) | |
template<class Itor > | |
list (Itor beg, const Itor &end) | |
size_type | size () |
Retorna la cantidad de elementos que tiene la lista. | |
bool | empty () const |
Retorna true si la lista está vacía. | |
bool | operator== (const list &c) const |
bool | operator!= (const list &c) const |
bool | operator< (const list &c) const |
bool | operator> (const list &c) const |
bool | operator<= (const list &c) const |
bool | operator>= (const list &c) const |
list & | operator= (const list &c) |
void | assign (const size_type &num, const T &value) |
template<typename Itor > | |
void | assign (Itor beg, const Itor &end) |
void | swap (list &c) |
reference | front () const |
Retorna una referencia al primer elemento de la lista. | |
reference | back () const |
Retorna una referencia al último elemento de la lista. | |
iterator | begin () const |
iterator | end () const |
iterator | insert (const iterator &pos, const T &value) |
void | insert (iterator pos, const size_type &num, const T &value) |
template<class Itor > | |
void | insert (iterator pos, Itor beg, const Itor &end) |
void | push_front (const T &value) |
Inserta al principio de la lista el valor value. | |
void | push_back (const T &value) |
void | remove (const T &value) |
Inserta al final de la lista el valor value. | |
iterator | erase (iterator pos) |
Elimina el elemento posicionado por el iterador pos. | |
iterator | erase (iterator beg, const iterator &end) |
void | pop_front () |
Elimina de la lista el primer elemento. | |
void | pop_back () |
Elimina de la lista el último elemento. | |
void | clear () |
Elimina todos los elementos de la lista. | |
void | resize (size_type num, const T &t=T()) |
template<class Op > | |
void | unique (const Op &op) |
void | unique () |
Elimina de la lista todos los elementos duplicados consecutivos. | |
void | splice (iterator pos, list &l) |
void | splice (iterator pos, list &src_list, iterator src_pos) |
void | splice (iterator pos, list &src_list, iterator src_beg, const iterator &src_end) |
template<class Cmp > | |
void | sort (const Cmp &) |
Ordena la lista según criterio de comparación Cmp. | |
void | sort () |
Ordena la lista. | |
template<class Cmp > | |
void | merge (list &l, const Cmp &) |
Mezcla dos listas ordenadas según criterio de comparación Cmp. | |
void | merge (list &l) |
Mezcla dos listas ordenadas. | |
void | reverse () |
Invierte la lista. | |
Implementación Aleph del contenedor estándar C++ List<T>.
La implantación está fundamentada sobre la clase Aleph Dlist<T>.
|
inline |
Instancia una nueva lista de num elementos cuyo valor está determinado por lo que el constructor T::T().
|
inline |
Instancia una nueva lista de num elementos con valor inicial value.
[in] | num | la cantidad inicial de elementos. |
[in] | value | el valor que tendrán los elementos de la lista. |
|
inline |
Instancia una nueva lista con los elementos de un contenedor comprendidos en el rango [beg..end).
Este constructor instancia una nueva lista con elementos copiados desde un contenedor mediante el rango especificado por [ben..end).
[in] | beg | inicio del rango en el contenedor de copia. |
[in] | end | término del rango en el contenedor de copia. |
|
inline |
Elimina todos los elementos de this e inserta num elementos con valor value.
[in] | num | cantidad de elementos a insertar. |
[in] | value | valor a copiar. |
Hace referencia a Aleph::list< T >::clear().
|
inline |
Elimina todos los elementos de this e inserta en el vector los elementos de un contenedor en el rango comprendido entre [beg..end).
[in] | beg | comienzo del rango. |
[in] | end | término del rango. |
Hace referencia a Aleph::list< T >::clear().
|
inline |
Retorna un iterador posicionado en el primer elemento de la lista.
|
inline |
Retorna un iterador posicionado en el último elemento de la lista.
Referenciado por Aleph::list< T >::resize().
|
inline |
Elimina de la lista los elementos del rango [[beg..end). Retorna un iterador posicionado en el primer elemento sucesor a los eliminados.
Hace referencia a Aleph::Dnode< T >::Iterator::del().
|
inline |
Inserta el valor de value a partir del elemento actual del iterador pos. Retorna un iterador posicionado sobre el elemento recién insertado.
Hace referencia a Aleph::Dlink::append(), Aleph::Dnode< T >::Iterator::get_current() y Aleph::Dlink::Iterator::set().
Referenciado por Aleph::Path< GT >::insert() y Aleph::list< T >::resize().
|
inline |
Inserta en la lista, a partir de la posición actual de pos, num copias del valor value.
Hace referencia a Aleph::Dlink::append(), Aleph::Dnode< T >::Iterator::get_current(), Aleph::Dlink::insert_list() y Aleph::Dlink::remove_all_and_delete().
|
inline |
Inserta en la lista, a partir de la posición pos, los elementos de un contenedor comprendidos en el rango [beg..end).
Hace referencia a Aleph::Dlink::append(), Aleph::Dnode< T >::Iterator::get_current(), Aleph::Dlink::insert_list() y Aleph::Dlink::remove_all_and_delete().
|
inline |
Retorna false si la lista this contiene al menos un elemento secuencialmente distinto al de la lista c.
|
inline |
Retorna true si la lista this es lexicográficamente menor que la lista c.
Hace referencia a Aleph::Dnode< T >::Iterator::get_current(), Aleph::Dlink::Iterator::has_current() y Aleph::Dlink::Iterator::next().
|
inline |
Retorna true si la lista this es lexicográficamente menor o igual que la lista c.
|
inline |
Elimina todos los elementos de this y le asigna todos los elementos de c.
Hace referencia a Aleph::list< T >::clear().
|
inline |
Retorna true si el contenido de this es exactamente el mismo que el de la lista c.
Hace referencia a Aleph::Dnode< T >::Iterator::get_current(), Aleph::Dlink::Iterator::has_current() y Aleph::Dlink::Iterator::next().
|
inline |
Retorna true si la lista this es lexicográficamente mayor que la lista c.
|
inline |
Retorna true si la lista this es lexicográficamente mayor o igual que la lista c.
|
inline |
Reajusta el tamaño de la lista a num elementos.
resize(num,t) puede tener dos comportamientos según el valor de num:
[in] | num | nuevo tamaño de la lista. |
[in] | t | valor a insertar si num es mayor que el tamaño de la lista. Por omisión, si no se especifica este parámetros, entonces el valor a insertar será el arrojado por el constructor T::T(). |
bad_alloc | si no hay suficiente memoria. |
Hace referencia a Aleph::list< T >::end(), Aleph::list< T >::insert() y Aleph::list< T >::size().
|
inline |
Particiona una lista a partir de la posición del iterador pos
splice(post,l) particiona la lista this a partir del iterador pos y coloca los elementos a partir de pos en la lista l.
splice() particiona la lista en tiempo contante .
[in] | pos | iterador cuya posición indica punto de partición de la lista. |
[out] | l | lista donde se colocan los elementos de la lista particionada. |
Hace referencia a Aleph::Dnode< T >::Iterator::get_current().
|
inline |
Mueve el elemento en la posición src_pos de la lista src_list al frente del elemento pos de la lista this.
splice(pos,src_list,src_pos) mueve el elemento actual de src_pos, que itera sobre la lista src_list, al frente del elemento pos de la lista this.
[in] | pos | posición dentro de this donde se insertará elemento de la lista src_list. |
[out] | src_list | lista origen de donde se moverá el elemento. |
[in] | src_pos | posición en src_list del elemento a mover. |
Hace referencia a Aleph::Dnode< T >::Iterator::del() y Aleph::Dnode< T >::Iterator::get_current().
|
inline |
Mueve el rango de elementos [src_beg,src_end) de la lista src_list hacia la lista this en tiempo .
Hace referencia a Aleph::Dlink::cut_list() y Aleph::Dnode< T >::Iterator::get_current().
|
inline |
Intercambian en tiempo constante (muy rápido) todos los elementos del vector this con los del vector c.
Referenciado por Aleph::Path< GT >::swap().
Elimina de la lista todos los elementos duplicados consecutivos cuyo criterio op sea true.
Hace referencia a Aleph::Dnode< T >::Iterator::del(), Aleph::Dnode< T >::Iterator::get_current(), Aleph::Dlink::Iterator::has_current() y Aleph::Dlink::Iterator::next().