다음 작업과 함께 개의 공간 단어 를 사용하는 정수 우선 순위 대기열 에 모두 최악의 시간에 무작위로 액세스하지 않고 있습니까?
createEmptyQueue
에서 를위한 약간의 정수 .insert
에서 .deleteMin
에서 여기서 \ 델타 _ {\ 분} 작고 두번째 키 작은 차이이다.
또한 키 에 a가 적용 deleteMin
되면 모든 추가 인서트는 입니다.
관련된 일:
Bose et al.의 "Bounded Universes의 빠른 로컬 검색 및 업데이트" 는 필요한 것보다 빠르지 만 필요한 것보다 deleteMin
느립니다 insert
.
이국적인 "Yggdrasil 메모리"를 사용하는 Brodnik et al.의 "Westst constant time priority queue" 이 질문의 목적을 위해 더 표준 정수 RAM 모델에 관심이 있습니다.
Brodnik 및 Karlsson의 "Multiprocess Time Queue" 는 (k _ {\ min}, k _ {\ min} + \ delta _ {\ min}]에 키가있는 요소에 대한 삽입을 제한합니다 . 여기서 은 최소값입니다. 키.
이것은 해시 테이블에서 매우 간단하지만 상각 및 임의성을 사용합니다.
- 큐는 키 해시 테이블과 최소 키의 복사본 쌍입니다.
insert
키를 해시 테이블에 추가하고 필요한 경우 최소 키 사본을 업데이트합니다.deleteMin
해시 테이블에서 최소 키를 찾은 다음 를 순서대로 검색하여 다음 최소 키를 검색합니다 .