Aşağıdaki işlemlerle sözcüklerini kullanan , en kötü durumda ve rasgele erişime sahip olmayan bir tamsayı öncelik kuyruğunda var mı :
createEmptyQueueiçerisinde için bir sabit .cinsertiçerisinde .deleteMiniçerisinde , burada \ ö _ {\ dak} küçük ve en küçük ikinci anahtar arasındaki farktır.Δ dk.
Ayrıca, k anahtarına a tabi tutulduktan sonra deleteMin, diğer tüm kesici uçlar .
Alakalı iş:
Bose et al. "Sınırlı Evrenlerde Hızlı Yerel Arama ve Güncellemeler" , ihtiyacımdan daha hızlı deleteMinama ihtiyacımdan daha yavaş insert.
Brodnik ve arkadaşları , egzotik "Yggdrasil hafızasını" kullanan "En kötü durum sabit zaman önceliği kuyruğu ". Bu sorunun amaçları için, daha standart tamsayı RAM modelleri ile ilgileniyorum.
Brodnik ve Karlsson'un anahtarları (k _ {\ min}, k _ {\ min} + \ delta _ {\ min}] olan öğelere eklemeyi sınırlayan "Çok İşlemcili Zaman Kuyruğu" , burada minimum değerdir tuşuna basın.
Bunun karma tablo ile oldukça basit olduğunu, ancak amortisman ve rasgelelik kullandığını unutmayın:
- Kuyruklar, karma anahtar tablosunun çiftleri ve minimum anahtarın bir kopyasıdır.
insertanahtarı karma tabloya ekler ve gerekirse minimum anahtar kopyasını güncelleştirir.deleteMinhash tablosundaki minimum anahtarı arar, ardından sırayla arayarak bir sonraki minimum anahtarı arar .