¿Qué estructuras de datos son más eficientes que las tablas hash?

¿Qué estructuras de datos son más eficientes que las tablas hash?

No es posible decir directamente qué estructura de datos es más eficiente que la tabla hash. Depende de la aplicación. Cada estructura de datos tiene sus propias características únicas.

En algunos casos, el filtro de floración y el trie funcionan mejor que la tabla hash.

A continuación solo estoy tratando de darte una visión general.

  1. La coincidencia de prefijo más larga en las tablas de enrutamiento: en este caso, la tabla hash no será eficiente. Aquí el trie es mejor que la tabla hash. Las aplicaciones donde las entradas comparten prefijos comunes, es mejor implementarlas con trie.
  2. En caso de que algunas aplicaciones solo quieran saber dónde está el contenido o no, entonces es mejor aplicar Bloom Filter, ya que es muy rápido en comparación con la tabla hash. También consume menos memoria. Pero el principal inconveniente del filtro de floración es falso positivo. Significa que cuando la respuesta es negativa, es 100% correcta, pero en el otro caso a veces puede estar equivocada.

Cubos Una tabla hash es solo un montón de cubos con alguna forma de lidiar con las colisiones. Sin embargo, los cubos están bastante limitados al tamaño de los datos.

Aún así, una vez vi un artículo que mostraba que uno podía rastrear de manera eficiente una escena al precalcular todos los rayos posibles, a una determinada resolución, y almacenarlos en caché de una manera particularmente concisa.

Si su requisito es probar la membresía de un elemento en un conjunto de gran número de elementos de una manera rápida y eficiente en el espacio, Bloom Filter podría ser útil. Es una estructura de datos probabilística y es mucho más eficiente en espacio que las tablas hash, ya que en realidad no almacena los elementos.
Para consultas de membresía de conjunto, responde si un elemento “definitivamente no está en un conjunto” o “podría estar allí en un conjunto”. Por lo tanto, puede tener algunos falsos positivos, pero no hay falsos negativos.
Sin embargo, un filtro Bloom no puede reemplazar completamente una tabla hash porque ambos sirven para diferentes propósitos.

Más explicación: filtro Bloom

comprueba las matrices judy, los árboles rojos y negros

More Interesting

¿Cuáles son los temas candentes en informática para escribir un trabajo de investigación?

¿Cuáles son los mejores algoritmos en informática para dominar inicialmente?

¿Cuáles son los mejores métodos para la gestión de proyectos en un entorno altamente incierto?

¿Qué campo tiene la investigación más interesante?

¿Cuál es un problema o problema interesante relacionado con los lenguajes de script para un proyecto en mi curso de diseño de lenguaje de programación?

¿Cuánto costará construir un moderno centro de investigación en informática?

¿Es posible convertir el desarrollo de una aplicación basada en un marco existente en un trabajo de investigación?

¿Por qué el parámetro predeterminado en csrankings.org es "EE. UU. Solamente" aunque el sitio web se llame "Clasificación de informática"?

¿Cuáles son algunas de las lecturas obligatorias (libros, trabajos de investigación, blogs) para sistemas operativos?

¿Cuáles son las áreas de alcance para la investigación en inteligencia artificial (IA) para un estudiante de informática? ¿Qué hay realmente dentro de la IA?

¿Qué temas en algoritmos debería un estudiante con el objetivo de especializarse en la teoría de la complejidad computacional maestra?

¿Cuál es el SDLC que se sigue para los proyectos de investigación?

¿Es una buena idea hablar de aspiraciones de investigación interdisciplinarias en mi Declaración de Propósito?

¿Es la computación en el espacio diferente de la computación en la tierra?

¿Cuáles son algunos de los algoritmos más importantes?