Laboratorio de hashing y memoria en C

Tabla Hash

Tabla hash de capacidad fija con claves/valores enteros y encadenamiento separado.

Abrir guía del módulo

1 Preparar

Selecciona una operación, usa enteros y conserva la política de capacidad fija.

La capacidad permanece fija; reproducir no vuelve a preparar la entrada.

Sin traza cargada.

Paso: 0/0

2 Predecir

Antes de ejecutar, predice un aspecto de la operación preparada.

3 Ejecutar

Estado visual

5 Relacionar con C

Codigo C

Codigo C no disponible para esta operacion en docs/tads_C/tad_tabla_hash.c.

4 Comprender

Prepara una operación para observar índice, cadena, punteros y memoria.

Función hash

Sin frame.

Cadena activa

Sin cadena.

Variables y punteros

Sin punteros.

Costo observado

Sin medición.

Memoria

Sin transición.

Invariante

Sin verificación.

6 Comparar capacidades

La misma entrada inmutable se inserta en tres copias aisladas: capacidad 3, 7 y 17.

Prepara una comparación para observar distribución, colisiones, cadenas y costo de búsqueda.

7 Reflexionar

Consola C (printf)

Historial C17

    Estructura del TAD
    typedef struct th_nodo {
        int clave;                 
        int valor;                 
        struct th_nodo *siguiente; 
    } THNodo;
    
    typedef struct {
        THNodo **buckets; 
        int capacidad;    
        int cantidad;     
    } TablaHash;
    
    typedef struct {
        int capacidad;        
        int cantidad;         
        int buckets_ocupados; 
        int colisiones;       
        float factor_carga;  
    } THEstadisticas;