Skip to main content

Predecessor Search

  • Reference work entry
  • First Online:
  • 92 Accesses

Years and Authors of Summarized Original Work

  • 2006; Pătraşcu, Thorup

Problem Definition

Consider an ordered universe U, and a set \( { T \subset U } \) with \( { |T|=n } \). The goal is to preprocess T, such that the following query can be answered efficiently: given \( { x \in U } \), report the predecessor of x, i.e., \( { \max \{ y \in T \mid y < x \} } \). One can also consider the dynamic problem, where elements are inserted and deleted into T. Let tq be the query time, and tu the update time.

This is a fundamental search problem, with an impressive number of applications. Later, this entry discusses IP lookup (forwarding packets on the Internet), orthogonal range queries and persistent data structures as examples.

The problem was considered in many computational models. In fact, most models below were initially defined to study the predecessor problem.

Comparison model::

The problem can be solved through binary search in \( { \Theta(\lg n) } \)comparisons. There is a lot of...

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   1,599.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD   1,999.99
Price excludes VAT (USA)
  • Durable hardcover 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

Learn about institutional subscriptions

Recommended Reading

  1. Ajtai M (1988) A lower bound for finding predecessors in Yao's cell probemodel. Combinatorica 8(3):235–247

    Article  MathSciNet  MATH  Google Scholar 

  2. Andersson A, Miltersen PB, Thorup M (1999) Fusion trees can be implemented with AC0 instructions only. Theor Comput Sci 215(1–2):337–344

    Article  MathSciNet  MATH  Google Scholar 

  3. Andersson A, Thorup M (2002) Dynamic ordered sets with exponential search trees. CoRR cs.DS/0210006. See also FOCS'96, STOC'00.

    Google Scholar 

  4. Beame P, Fich FE (2002) Optimal bounds for the predecessor problem and related problems. J Comput Syst Sci 65(1):38–72, See also STOC'99

    Article  MathSciNet  MATH  Google Scholar 

  5. Brodnik A, Carlsson S, Fredman ML, Karlsson J, Munro JI (2005) Worst case constant time priority queue. J Syst Softw 78(3):249–256, See also SODA'01

    Article  MATH  Google Scholar 

  6. Chakrabarti A, Regev O (2004) An optimal randomised cell probe lower bound for approximate nearest neighbour searching. In: Proceedings of the 45th IEEE symposium on foundations of computer science (FOCS), pp 473–482

    Google Scholar 

  7. Degermark M, Brodnik A, Carlsson S, Pink S (1997) Small forwarding tables for fast routing lookups. In: Proceedings of the ACM SIGCOMM, pp 3–14

    Google Scholar 

  8. Driscoll JR, Sarnak N, Sleator DD, Tarjan RE (1989) Making data structures persistent. J Comput Syst Sci 38(1):86–124, See also STOC'86

    Article  MathSciNet  MATH  Google Scholar 

  9. Feldmann A, Muthukrishnan S (2000) Tradeoffs for packet classification. In: Proceedings of the IEEE INFOCOM, pp 1193–1202

    Google Scholar 

  10. Fredman ML, Willard DE (1993) Surpassing the information theoretic bound with fusion trees. J Comput Syst Sci 47(3):424–436, See also STOC'90

    Article  MathSciNet  MATH  Google Scholar 

  11. Fredman ML, Willard DE (1994) Trans-dichotomous algorithms for minimum spanning trees and shortest paths. J Comput Syst Sci 48(3):533–551, See also FOCS'90

    Article  MathSciNet  MATH  Google Scholar 

  12. Miltersen PB (1994) Lower bounds for union-split-find related problems on random access machines. In: 26th ACM symposium on theory of computing (STOC), pp 625–634

    Google Scholar 

  13. Miltersen PB, Nisan N, Safra S, Wigderson A (1998) On data structures and asymmetric communication complexity. J Comput Syst Sci 57(1):37–49, See also STOC'95

    Article  MathSciNet  MATH  Google Scholar 

  14. Pagh R (2000) A trade-off for worst-case efficient dictionaries. Nord J Comput 7:151–163, See also SWAT'00

    MathSciNet  MATH  Google Scholar 

  15. Pătraşcu M, Thorup M (2006) Time-space trade-offs for predecessor search. In: Proceedings of the 38th ACM symposium on theory of computing (STOC), pp 232–240

    Google Scholar 

  16. Pătraşcu, M, Thorup M (2007) Randomization does not help searching predecessors. In: Proceedings of the 18th ACM/SIAM symposium on discrete algorithms (SODA)

    Google Scholar 

  17. Sen P, Venkatesh S (2003) Lower bounds for predecessor searching in the cell probe model. arXiv:cs.CC/0309033. See also ICALP'01, CCC'03

    Google Scholar 

  18. van Emde Boas P, Kaas R, Zijlstra E (1977) Design and implementation of an efficient priority queue. Math Syst Theory 10:99–127, Announced by van Emde Boas alone at FOCS'75

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer Science+Business Media New York

About this entry

Cite this entry

Pătraşcu, M. (2016). Predecessor Search. In: Kao, MY. (eds) Encyclopedia of Algorithms. Springer, New York, NY. https://doi.org/10.1007/978-1-4939-2864-4_298

Download citation

Publish with us

Policies and ethics