Skip to main content

An Experimental Evaluation of Hybrid Data Structures for Searching

  • Conference paper
  • First Online:
Algorithm Engineering (WAE 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1668))

Included in the following conference series:

Abstract

A common paradigm in data structures is to combine two different kinds of data structures into one, yielding a hybrid data structure with improved resource bounds. We perform an experimental evaluation of hybrid data structures in the context of maintaining a dynamic ordered set whose items have integer or floating-point keys. Among other things we demonstrate clear speedups over library implementations of search trees, both for predecessor queries and updates. Our implementations use very little extra memory compared to search trees, and are also quite generic.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A. Acharya, H. Zhu and K. Shen. Adaptive algorithms for cache-efficient trie search. Presented at ALENEX’ 99.

    Google Scholar 

  2. J.-I. Aoe and K. Morimoto. An efficient implementation of trie structures. Software Practice and Experience, 22 (1992), pp 695–721.

    Article  Google Scholar 

  3. A. Brodnik, S. Carlsson, M. Degermark and S. Pink. Small Forwarding tables for fast routing lookups. In Proc. ACM SIGCOMM Conference: Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM-97), pp. 3–14, ACM Press, 1997.

    Google Scholar 

  4. M. R. Brown and R. E. Tarjan. Design and analysis of a data structure for representing sorted lists. SIAM Journal on Computing, 9 (1980), pp. 594–614.

    Article  MathSciNet  Google Scholar 

  5. T. H. Cormen, C. E. Leiserson and R. Rivest. Introduction to Algorithms. MIT Press, 1990.

    Google Scholar 

  6. J. J. Darragh, J. G. Cleary and I. H. Witten. Bonsai: A compact representation of trees. Software Practice and Experience, 23 (1993), pp 277–291.

    Article  Google Scholar 

  7. P. F. Dietz. Maintaining order in a linked list. In Proc. 14th ACM STOC, pages 122–127, May 1982.

    Google Scholar 

  8. P. F. Dietz and D. D. Sleator. Two algorithms for maintaining order in a list. In Proc. 19th ACM STOC, pages 365–372, 1987.

    Google Scholar 

  9. M. L. Fredman and D. E. Willard. Surpassing the information theoretic bound with fusion trees. J. Comput. System Sci., 47 (1993), pp. 424–436.

    Article  MathSciNet  Google Scholar 

  10. T. Hagerup. Sorting and Searching on the Word RAM. In STACS: Annual Symposium on Theoretical Aspects of Computer Science, LNCS 1373, 1998.

    Google Scholar 

  11. J. L Hennessy and D. A. Patterson, Computer Architecture: A Quantitative Approach, 2nd ed. Morgan Kaufmann, 1996.

    Google Scholar 

  12. S. Huddleston and K. Mehlhorn. A new data structure for representing sorted lists. Acta Informatica, 17 (1982), pp. 157–184.

    Article  MathSciNet  Google Scholar 

  13. D. E. Knuth. The Art of Computer Programming. Volume 3: Sorting and Searching, 3rd ed. Addison-Wesley, 1997.

    Google Scholar 

  14. C. Levcopolous and M. H. Overmars. A balanced search tree with O(1) worst-case update time. Acta Informatica, 26:269–278, 1988.

    Article  MathSciNet  Google Scholar 

  15. David B. Lomet. A simple bounded disorder file organisation with good performance. ACM Trans. Database Systems13 (1988), pp. 525–551.

    Article  Google Scholar 

  16. U. Manber and S. Wu. GLIMPSE: a tool to search through entire file systems. In Proc Usenix Winter 1994 Technical Conference, San Francisco, 1994, pp. 23–32.

    Google Scholar 

  17. K. Mehlhorn and St. Näher. LEDA. Cambridge University Press, 1998.

    Google Scholar 

  18. S. Nilsson and M. Tikkanen. Implementing a dynamic compressed trie. In 2nd Workshop on Algorithm Engineering, WAE’ 98—Proceedings, K. Mehlhorn, Ed., Max Planck Institute Research Report MPI-I-98-1-019, 1998, pp. 25–36.

    Google Scholar 

  19. M. H. Overmars. The design of dynamic data structures, volume 156 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, 1983.

    MATH  Google Scholar 

  20. S. Sahni. Data Structures, Algorithms and Applications in C++. McGraw-Hill, 1998.

    Google Scholar 

  21. B. Stroustrup. The C++ programming language, 3rd Ed. Addison-Wesley, 1997.

    Google Scholar 

  22. A. K. Tsakalidis. Maintaining order in a generalized linked list. Acta Informatica, 21(1):101–112, 1984.

    Article  MathSciNet  Google Scholar 

  23. P. van Emde Boas. Preserving order in a forest in less than logarithmic time and linear space. Information Processing Letters, 6(3):80–82, 1977.

    Article  Google Scholar 

  24. D. E. Willard New trie data structures which support very fast search operations Journal of Computer and System Sciences, 28(3), pp. 379–394, 1984.

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Korda, M., Raman, R. (1999). An Experimental Evaluation of Hybrid Data Structures for Searching. In: Vitter, J.S., Zaroliagis, C.D. (eds) Algorithm Engineering. WAE 1999. Lecture Notes in Computer Science, vol 1668. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48318-7_18

Download citation

  • DOI: https://doi.org/10.1007/3-540-48318-7_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66427-7

  • Online ISBN: 978-3-540-48318-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics