Si veo que una tabla hash (o cualquier otra estructura de datos construida en una tabla hash) se está llenando, ¿en qué punto debe construir una nueva tabla con más cubos? Y dado n elementos en la tabla hasta ahora, ¿cómo calcula cuántos cubos usar en el nuevo?Cuántas cubetas hash
Digamos que tengo 100 cubos. ¿Debería reorganizarlo cuando hay 50 elementos en él? 500? 5000? ¿O debería buscar el cubo y la llave más completos sobre eso? Luego, cuando llegué a ese punto, ¿qué tan grande hago la nueva tabla hash?
En relación con esto, si sabe de antemano aproximadamente cuántos elementos entrarán, ¿hay alguna manera de calcular el número de segmentos para obtener un buen rendimiento promedio?
Sé que la respuesta real depende de muchas otras consideraciones, como la importancia de la velocidad frente al tamaño en un ejemplo específico, pero estoy buscando guildlines generales.
También sé que no debería estar optimizando este tipo de cosas a menos que un buen perfil indique que se trata de un cuello de botella. Solo estoy pensando en un proyecto que usaría muchas tablas hash y me pregunté cómo abordar esto.