Estoy buscando una buena estructura de datos funcional para almacenar datos espaciales (puntuales). La estructura de datos debería permitir consultas epsilon simples para puntos ya presentes. También tengo que modificar los datos con bastante frecuencia. Esto significa que los puntos se pueden mover y deberían poder actualizarse en la estructura de datos. Esto probablemente se pueda manejar usando un delete/add normal, pero un movimiento real podría ser más rápido.Estructura de datos para datos espaciales
Por ahora estoy pensando en usar quad/oct-trees (o superior), ya que la parte de movimiento debería ser bastante fácil de hacer. Sin embargo, se sabe que los árboles cuádruples son peores en lo que respecta al equilibrio. KD-Trees podría ser otra opción, pero la actualización parece bastante desagradable. También la mayoría de las implementaciones de estructuras de datos espaciales que puedo encontrar son solo de procedimiento y estoy usando un lenguaje funcional.
Solo para aclarar: ¿es una consulta épsilon una consulta para encontrar puntos que están dentro de una distancia especificada de un punto dado? – aneccodeal