El requisito para el hashing perfecto es que todos los elementos de su conjunto se puedan convertir en un conjunto distintivo de enteros.
Con el hash cuckoo, tienes un límite en la cantidad de puntos que un elemento puede hacer hash. Eventualmente, cuando su conjunto sea lo suficientemente grande, se encontrará con un ciclo en el que intenta insertar un valor, ese valor se empuja a su ubicación alternativa, que tiene un valor, que se empuja a su ubicación alternativa, que tiene un valor, etc., y finalmente la ubicación alternativa para el valor actual que está moviendo termina siendo la ubicación original en la que intentó ingresar. Cuando esto sucede, no hay forma de asignar el valor que está tratando de agregar a una posición entera distinta.
Eso es difícil de explicar en el texto, así que permítanme tomar la foto de Wikipedia:
- ¿Cómo se comparan las computadoras nanobiológicas con las computadoras cuánticas? ¿Cuales son las ventajas y desventajas de cada uno?
- ¿Cómo se utilizan las técnicas de aprendizaje automático en el comercio?
- Cómo comprimir información para su uso posterior
- ¿Es cierto que un título en informática es útil solo si puedo ingresar a una universidad superior como MIT o Stanford, y es mejor ser un desarrollador autodidacta en lugar de estudiar en una universidad mala?
- ¿Cuáles son algunos ejemplos de abstracción en biología?
Las flechas representan las ubicaciones alternativas para cada valor en el conjunto. Si observa los valores H y W, notará que sus ubicaciones alternativas apuntan entre sí. No hay forma de insertar un elemento en la ubicación que almacena H o la ubicación que almacena W.