|
| GenLhashTable (Hash_Fct __hash_fct, size_t table_size=Primes::DefaultPrime, const float &__lower_alpha=hash_default_lower_alpha, const float &__upper_alpha=hash_default_upper_alpha, const bool __remove_all_buckets=true, const bool __with_resize=true) throw (std::exception, std::bad_alloc) |
|
void | swap (GenLhashTable &other) |
|
void | empty () |
| Vacía la tabla hash; libera memoria de todas las cubetas.
|
|
Hash_Fct | get_hash_fct () const |
|
void | set_hash_fct (Hash_Fct fct) |
| Set the internal hash function.
|
|
float | current_alpha () const |
| return the current table load
|
|
Bucket * | insert (Bucket *bucket) |
|
Bucket * | search (const Key &key) const |
|
Bucket * | remove (Bucket *bucket) |
|
size_t | resize (size_t new_size) throw (std::exception, std::bad_alloc) |
|
virtual | ~GenLhashTable () |
|
Bucket * | search_next (Bucket *bucket) const |
|
const size_t & | capacity () const |
| Retorna el tamaño de la tabla.
|
|
const size_t & | size () const |
| Retorna el número de elementos que contiene la tabla.
|
|
const size_t & | get_num_busy_slots () const |
| Retorna la cantidad de entradas del arreglo que están ocupadas.
|
|
bool | is_empty () const |
|
| HASH_STATS () |
|
template<typename Key, class BucketType, class Cmp>
class Aleph::GenLhashTable< Key, BucketType, Cmp >
Tabla hash genérica con resolución de colisiones por encadenamiento separado.
El tipo GenLhashTable implanta una tabla hash genérica con resolución de colisiones por encadenamiento separado en la cual el tipo de cubeta es un parámetro tipo.
Normalmente, este es destinado como back-end de los tipos LhashTable y LhashTableVtl, los cuales son fundamentalmente lo mismo, a excepción de que éstos ya tienen definidos su clases cubetas sin o con destructor virtual.
- Parámetros
-
Key | clave de indización de la tabla. |
BucketType | el tipo de cubeta. |
Cmp | clase de comparación entre las claves. |
- Ver también
- LhashTable LhashTableVtl