¿Existe una cola de prioridad entera que usa palabras de espacio con las siguientes operaciones, todo en el peor de los casos y sin acceso a aleatoriedad:
createEmptyQueue
en para alguna constante c .insert
en .deleteMin
en , donde δ min es la diferencia entre la clave más pequeña y la segunda clave más pequeña.
Además, una vez que una clave ha sido sujeta a a , todas las inserciones adicionales son > k .deleteMin
Trabajo relacionado:
Bose et al., "Búsquedas locales rápidas y actualizaciones en universos limitados" , que es más rápido de lo que necesito deleteMin
pero más lento de lo que necesito insert
.
La "cola de prioridad de tiempo constante" en el peor de los casos de Brodnik et al. , Que utiliza la exótica "memoria Yggdrasil". A los fines de esta pregunta, me interesan más modelos de RAM enteros estándar.
La "Cola de tiempo multiproceso" de Brodnik y Karlsson , que limita la inserción a elementos con claves en , donde k min es el valor de la clave mínima.
Tenga en cuenta que esto es bastante simple con una tabla hash, pero que usa amortización y aleatoriedad:
- Las colas son pares de una tabla hash de claves y una copia de la clave mínima.
insert
agrega la clave a la tabla hash y actualiza la copia mínima de la clave si corresponde.deleteMin
fuente