Filtro de Bloom

From Wikipedia, the free encyclopedia

Un filtro de Bloom es una estructura de datos probabilística, concebida por Burton Howard Bloom en 1970, que es usada para verificar si un elemento es miembro de un conjunto. Los falsos positivos son posibles pero los falsos negativos no.

Un ejemplo de filtro de Bloom, representando el conjunto {x, y, z}. Las flechas coloreadas muestran las posiciones en el vector de bits de los resultados de aplicar las funciones hash a cada uno de los elementos. El elemento w no está en el conjunto {x, y, z}, porque tiene uno o más de los valores hash a 0. Para este ejemplo m = 18 y k = 3.
  • Inicialmente tenemos:
    • Un conjunto de elementos de un universo
    • Un vector de bits, inicializados en .
    • Un conjunto de funciones hash , cada una de las cuales dado un elemento de devuelve un valor en el dominio (una posición del vector ).
  • Para agregar un elemento, se aplica cada una de las funciones hash para conseguir posiciones de vector. Esas posiciones del vector se ponen a en el vector .
  • Al buscar un elemento, verificamos si al aplicar todas las funciones hash se obtiene para cada una de ellas en el vector .

Consideraciones

Aplicaciones

Referencias

Related Articles

Wikiwand AI