Me pregunto si alguien sabe de una estructura de datos que manejar eficientemente la siguiente situación:Estructura de datos para almacenar Rangos
La estructura de datos debe almacenar varios, posiblemente superposición de longitud variable varía en alguna escala de tiempo continuo.
Por ejemplo, puede agregar los rangos
a:[0,3], b:[4,7], c:[0,9]
.El tiempo de inserción no necesita ser particularmente eficiente.
Retrievals tomarían un rango como un parámetro, y devolver todos los rangos en el conjunto que se solapa con el intervalo, por ejemplo:
Get(1,2)
volverían a y c.Get(6,7)
devolvería b y c.Get(2,6)
devolvería los tres.Las recuperaciones deben ser lo más eficientes posible.