Consulta ejercicio tablas de hash I2-2024-1 #179
-
Hola, estuve tratando de hacer este ejercicio de tablas de hash, pero tengo algunas dudas que no he podido resolver. Si me pudieran ayudar se los agradecería mucho! |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 5 replies
-
Hola!! 2.- Respecto a tu otra pregunta, recuerda que acorde al enunciado se define RUN Entero (sin DV) y DV char respectivamente. No me queda tan claro por qué te preocupa el número antes del dígito verificador. |
Beta Was this translation helpful? Give feedback.
-
Holaa gracias por tu respuesta! Con respecto al segundo punto, más que gana me preocupaban los casos en los que hubieran dos RUN con los mismos números antes del del DV, por lo que habría una colisión, por ejemplo 20.000.123-1 y 20.000.123-5 o se asume que esto no sucede? |
Beta Was this translation helpful? Give feedback.
-
Holaa me uno a la discusión, para el inciso a) el dato de que el 80% está entre 22.000.000 y 22.400.000 no nos suma info importante, cierto? porque con que nos digan que 200 mil personas rinden la prueba entonces, altiro podemos obtener el numero de buckets que seria 200.000, y luego para la funcion de hash proponer RUT%200.000, así es como lo pensé |
Beta Was this translation helpful? Give feedback.
Hola!!$h(RUN) = RUN mod 200000$ :)
1.- Puedes plantear otras funciones de hash para este ejercicio. Lo importante es haber llegado a eso y obtener adecuadamente el factor de carga, entre otros. Un hint que te da el enunciado, es que el 80% de los datos están entre 22.000.000 y 22.400.000 (y son 200 mil personas), por lo que habrán 160.000 registros contenidos en ese rango. Por darte un ejemplo, cuando yo di esta prueba, recuerdo haber propuesto una función con módulo, algo como
2.- Respecto a tu otra pregunta, recuerda que acorde al enunciado se define RUN Entero (sin DV) y DV char respectivamente. No me queda tan claro por qué te preocupa el número antes del dígito verificador.