Diapositiva PPT
2.5.3. Funciones de dispersión.
Algunas funciones de dispersión
- Con cadenas. Suma de códigos ASCII:
suma:= 0;
Para i:= 1 hasta Longitud(x) hacer
suma:= suma + ord(x[i]);
Devolver (suma mod B);
- Método de plegado o folding.
Con cadenas. Agrupar caracteres de n en n:
Cada carácter es un número en el intervalo 0..127.
Se suman los valores de los grupos.
Ej.: x= abcdefgh
h(x):= ( (128)3a + (128)2b + (128)c + d
+(128)3e + (128)2f + (128)g + h ) mod B;
Con enteros. Agrupar los dígitos de n en n:
h(x) = ((x div 109) + (x div 106) + (x div 103) + x ) mod B
Con reales. Agrupar dígitos decimales de n en n:
h(x) = ((x * 100) + (x * 104) + (x * 106) + ... ) mod B