ACM Home Page
Please provide us with feedback. Feedback
An adaptive packed-memory array
Full text PdfPdf (171 KB)
Source Symposium on Principles of Database Systems archive
Proceedings of the twenty-fifth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems table of contents
Chicago, IL, USA
SESSION: PODS award papers table of contents
Pages: 20 - 29  
Year of Publication: 2006
ISBN:1-59593-318-2
Authors
Michael A. Bender  State University of New York at Stony Brook, NY
Haodong Hu  State University of New York at Stony Brook, NY
Sponsors
SIGMOD: ACM Special Interest Group on Management of Data
SIGART: ACM Special Interest Group on Artificial Intelligence
ACM: Association for Computing Machinery
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 74,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1142351.1142355
What is a DOI?

ABSTRACT

The packed-memory array (PMA) is a data structure that maintains a dynamic set of N elements in sorted order in a Θ(N)-sized array. The idea is to intersperse Θ(N) empty spaces or gaps among the elements so that only a small number of elements need to be shifted around on an insert or delete. Because the elements are stored physically in sorted order in memory or on disk, the PMA can be used to support extremely efficient range queries. Specifically, the cost to scan L consecutive elements is O(1+L/B) memory transfers.This paper gives the first adaptive packed-memory array (APMA), which automatically adjusts to the input pattern. Like the original PMA, any pattern of updates costs only O(log2 N) amortized element moves and O(1+(log2 N)/B) amortized memory transfers per update. However, the APMA performs even better on many common input distributions achieving only O(logN) amortized element moves and O(1+(logN)/B) amortized memory transfers. The paper analyzes sequential inserts, where the insertions are to the front of the APMA, hammer inserts, where the insertions "hammer" on one part of the APMA, random inserts, where the insertions are after random elements in the APMA, and bulk inserts, where for constant α∈[0,1], Nα elements are inserted after random elements in the APMA. The paper then gives simulation results that are consistent with the asymptotic bounds. For sequential insertions of roughly 1.4 million elements, the APMA has four times fewer element moves per insertion than the traditional PMA and running times that are more than seven times faster.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
 
4
 
5
6
 
7
M. A. Bender, M. Farach-Colton, and M. Mosteiro. Insertion sort is O(n log n). In Proc. 3rd International Conference on Fun with Algorithms (FUN), pages 16--23, 2004.
8
 
9
10
 
11
12
 
13
 
14
 
15
I. Katriel. Implicit data structures based on local reorganizations. Master's thesis, Technion -- Israel Inst. of Tech., Haifa, May 2002.
16
 
17
18
19
 
20


Collaborative Colleagues:
Michael A. Bender: colleagues
Haodong Hu: colleagues