Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Prerequisites  





2 Description of data structure  





3 Operations  





4 References  














Radix heap






Deutsch
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


Aradix heap is a data structure for realizing the operations of a monotone priority queue. A set of elements to which a key is assigned can then be managed. The run time of the operations depends on the difference between the largest and smallest key or constant. The data structure consists mainly of a series of buckets, the size of which increases exponentially.

Prerequisites

[edit]
  1. all keys are natural numbers;
  2. max. key - min. key C for constant C;
  3. the extract-min operation is monotonic; that is, the values returned by successive extract-min calls are monotonically increasing.

Description of data structure

[edit]

The three most important fields are:

  1. of size , with 0 as the lowest index, stores the buckets;
  2. of size , with 0 as the lowest index, store the (lower) bounds of the buckets;
  3. , holds for each element in the heap the bucket in which it is stored.

The above diagram shows the data structure. The following invariants apply:

  1. key in : the keys in are up or down through the value in or limited.
  2. and for : the sizes of the buckets increase exponentially.

It is important to note the exponential growth of the limits (and thus the range that a bucket holds). In this way the logarithmic dependence of the field quantities is of value C, the maximum difference between two key values.

Operations

[edit]

During initialization, empty buckets are generated and the lower bounds are generated (according to invariant 2); running time .

During insert, a new element is linearly moved from right to left through the buckets and the new element with is stored in the left bucket to that ; running time .

For decrease-key, first the key value is decreased (checking for compliance with the invariants). Then, the field is used to locate the element and it is iterated to the left, if necessary, analogously to the insert operation. The running time is (amortized).

The extract-min operation removes an element from bucket and returns it. If the bucket is not yet empty, the operation is terminated. If, however, it is empty, the next larger non-empty bucket is searched, its smallest element tracked and is set to k (monotonicity is required for this). Then, according to the invariants, the bucket boundaries are redefined and the elements removed to the newly formed buckets; running time (amortized).

If displayed, the field is updated.

References

[edit]
Retrieved from "https://en.wikipedia.org/w/index.php?title=Radix_heap&oldid=1223688907"

Category: 
Heaps (data structures)
Hidden categories: 
Articles lacking in-text citations from September 2017
All articles lacking in-text citations
Articles needing additional references from May 2024
All articles needing additional references
 



This page was last edited on 13 May 2024, at 18:38 (UTC).

Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



Privacy policy

About Wikipedia

Disclaimers

Contact Wikipedia

Code of Conduct

Developers

Statistics

Cookie statement

Mobile view



Wikimedia Foundation
Powered by MediaWiki