Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/380752.380843acmconferencesArticle/Chapter ViewAbstractPublication PagesstocConference Proceedingsconference-collections
Article

Biased dictionaries with fast insert/deletes

Published: 06 July 2001 Publication History

Abstract

A dictionary data structure supports efficient search, insert, and delete operations on n keys from a totally ordered universe. Red-black trees, 2-3 trees, AVL trees, skip lists and other classic data structures facilitate O(logn) time search, insert and deletes, matching the information theoretic lower bound when access probabilities are uniform i.i.d. If access probabilities are non-uniform but still i.i.d., there are other weighted data structures such as D-trees, biased search trees, splay trees and treaps which can achieve optimality.
In many applications, however, the source of nonuniformity in access probabilities is locality of reference: examples include memory, cache, disk and buffer management and emerging applications in internetwork traffic management. In such applications, the access probability of any given key is not i.i.d., but decreases with idle time since the last access to the key.
It is possible to adjust the weighted dictionaries to achieve optimal search time even under time dependent distributions; however insert/delete times will be suboptimal at O(logn). In this paper, we present a lazy updating scheme which can be applied to weighted dictionaries to improve their amortized insert/delete performance when access probabilities decrease with time; optimality of search time is preserved. More speci%cally, let r(k) be the number of distinct keys accessed since the last access to key k- that is r(k) is the move-to-front rank of k. Let rmax(k) be the maximum rank of k during its lifetime.
Then our lazy update scheme enables the abovementioned data structures to perform search in O(log r(k)) time and insert/delete in O(log rmax(k)) time. We illustrate our lazy update scheme in the context of a new Biased Skip List data structure and show that our bounds are optimal.

References

[1]
S. Bent, D. Sleator, and R. Tarjan. Biased search trees. SIAM Journal of Computing, 14, 1985.]]
[2]
J. L. Bentley, D. S. Sleator, R. E. Tarjan, and V. Wei. A locally adaptive data compression scheme. Communication of the ACM, 29:320{330, 1986.]]
[3]
L. Breslau, P. Cao, L. Fan, G. Phillips, and S. Shenker. Web caching and zipf-like distributions: Evidence and implications. In Proc. IEEE INFOCOM, 1999.]]
[4]
M. Burrows and D. Wheeler. A block-sorting lossless data compression algorithm. DEC SRC Research Report, 124, 1994.]]
[5]
B. Chazelle and L. J. Guibas. Fractional cascading. In Algorithmica, volume 1, 1986.]]
[6]
K. Claffy, H.W.Braun, and G.C.Polyzos. A parameterizable methodology for internet traffic ow profiling. In IEEE Journal on Selected Areas in Communications, 1995.]]
[7]
A. Dan and D. Towsley. An approximate analysis of the LRU and FIFO buffer replacement schemes. In Proc. ACM SIGMETRICS, 1990.]]
[8]
F. Ergun, S. Mittra, C. Sahinalp, J. Sharp, and R. Sinha. A dynamic lookup scheme for bursty access patterns. In Proceedings of IEEE INFOCOM, 2001.]]
[9]
F. Ergun, C. Sahinalp, J. Sharp, and R. Sinha. Biased skip lists for highly skewed access patterns. In Proceedings of ALENEX, 2001.]]
[10]
P. Ferragina and G. Manzini. Opportunistic data structures with applications. In Proc. IEEE Symposium on Foundations of Computer Science, 2000.]]
[11]
R. Gutting and D. Wood. The parentheses tree. Information Science, 27, 1982.]]
[12]
S. Lin and N. McKeown. A simulation study of IP switching. In Proc. ACM SIGCOMM, 1997.]]
[13]
C. Martinez and S. Roura. Optimal and nearly optimal static weighted skip lists. Technical report, Universitat Politecnica de Catalunya, 1995.]]
[14]
K. Mehlhorn. Dynamic binary search. SIAM Journal of Computing, 8, 1979.]]
[15]
K. Mehlhorn. Arbitrary weight changes in dynamic trees. RAIRO Inform. Theor., 15, 1981.]]
[16]
K. Mehlhorn and S. Naher. Dynamic fractional cascading. Algorithmica, 5, 1990.]]
[17]
K. Mehlhorn and S. Naher. Algorithm design and software libraries: recent developments in leda project. In Algorithms, Software, Architectures, Information Processing, volume 92. Elsevier, 1995.]]
[18]
K. Mehlhorn and A. Tsakalidis. Data structures. In Handbook of Theoretical Computer Science, volume Algorithms and Complexity. Elsevier, 1997.]]
[19]
S. Mittra and A. Basu. Packet classiffication: An argument foraworking set model. Technical report, Bell Laboratories, 1999.]]
[20]
E. O'Neil, P. O'Neil, and G. Weikum. The LRU-K page replacement algorithm for database disk buffering. In Proc. 1993 ACM-SIGMOD Conference on Management of Data, 1993.]]
[21]
W. Pugh. Skip lists: a probabilistic alternative to balanced trees. Communications of the ACM, 33,6, 1990.]]
[22]
R. Seidel and C. Aragon. Randomized search trees. Algorithmica, 16, 1996.]]
[23]
D. Sleator and R. Tarjan. Self-adjusting binary search trees. Journal of the ACM, 32, 1985.]]
[24]
A. Tanenbaum. Operating Systems: Design and Implementation, 2nd edition. Prentice-Hall, 1997.]]

Cited By

View all
  • (2008)Dynamic optimality for skip lists and B-treesProceedings of the nineteenth annual ACM-SIAM symposium on Discrete algorithms10.5555/1347082.1347203(1106-1114)Online publication date: 20-Jan-2008
  • (2007)A data structure for a sequence of string accesses in external memoryACM Transactions on Algorithms10.1145/1186810.11868163:1(1-23)Online publication date: 2-Feb-2007
  • (2002)Biased Skip ListsAlgorithms and Computation10.1007/3-540-36136-7_1(1-13)Online publication date: 8-Nov-2002

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
STOC '01: Proceedings of the thirty-third annual ACM symposium on Theory of computing
July 2001
755 pages
ISBN:1581133499
DOI:10.1145/380752
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 July 2001

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

STOC01
Sponsor:

Acceptance Rates

STOC '01 Paper Acceptance Rate 83 of 230 submissions, 36%;
Overall Acceptance Rate 1,469 of 4,586 submissions, 32%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2008)Dynamic optimality for skip lists and B-treesProceedings of the nineteenth annual ACM-SIAM symposium on Discrete algorithms10.5555/1347082.1347203(1106-1114)Online publication date: 20-Jan-2008
  • (2007)A data structure for a sequence of string accesses in external memoryACM Transactions on Algorithms10.1145/1186810.11868163:1(1-23)Online publication date: 2-Feb-2007
  • (2002)Biased Skip ListsAlgorithms and Computation10.1007/3-540-36136-7_1(1-13)Online publication date: 8-Nov-2002

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media