, Volume 81, Issue 5, pp 1921–1937 | Cite as

Building an Optimal Point-Location Structure in \(O( sort (n))\) I/Os

  • Xiaocheng Hu
  • Cheng Sheng
  • Yufei TaoEmail author


We revisit the problem of constructing an external memory data structure on a planar subdivision formed by n segments to answer point location queries optimally in \(O(\log _B n)\) I/Os. The objective is to achieve the I/O cost of \( sort (n) = O(\frac{n}{B} \log _{M/B} \frac{n}{B})\), where B is the number of words in a disk block, and M being the number of words in memory. The previous algorithms are able to achieve this either in expectation or under the tall cache assumption of \(M \ge B^2\). We present the first algorithm that solves the problem deterministically for all values of M and B satisfying \(M \ge 2B\).


Point location queries Bulkloading External memory Computational geometry 



  1. 1.
    Achakeev, D., Seeger, B.: Efficient bulk updates on multiversion B-trees. PVLDB 6(14), 1834–1845 (2013)Google Scholar
  2. 2.
    Afshani, P., Chan, T.M.: On approximate range counting and depth. Discrete Comput. Geom. 42(1), 3–21 (2009)MathSciNetzbMATHGoogle Scholar
  3. 3.
    Agarwal, P.K., Arge, L.., Brodal, G.S.., Vitter, J.S.: I/O-efficient dynamic point location in monotone planar subdivisions. In: Proceedings of the Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 11–20 (1999)Google Scholar
  4. 4.
    Aggarwal, A., Vitter, J.S.: The input/output complexity of sorting and related problems. CACM 31(9), 1116–1127 (1988)MathSciNetGoogle Scholar
  5. 5.
    Arge, L., Brodal, G.S., Georgiadis, L.: Improved dynamic planar point location. In: Proceedings of Annual IEEE Symposium on Foundations of Computer Science (FOCS), pp. 305–314 (2006)Google Scholar
  6. 6.
    Arge, L., Brodal, G.S., Rao, S.S.: External memory planar point location with logarithmic updates. Algorithmica 63(1–2), 457–475 (2012)MathSciNetzbMATHGoogle Scholar
  7. 7.
    Arge, L., Danner, A., Teh, S.-M.: I/O-efficient point location using persistent B-trees. ACM J. Exp. Algorithmics 8, 1–2 (2003)MathSciNetzbMATHGoogle Scholar
  8. 8.
    Arge, L., Vahrenhold, J.: I/O-efficient dynamic planar point location. Comput. Geom. 29(2), 147–162 (2004)MathSciNetzbMATHGoogle Scholar
  9. 9.
    Arge, L., Vengroff, D.E., Vitter, J.S.: External-memory algorithms for processing line segments in geographic information systems. Algorithmica 47(1), 1–25 (2007)MathSciNetzbMATHGoogle Scholar
  10. 10.
    Aronov, B., Har-Peled, S.: On approximating the depth and related problems. SIAM J. Comput. 38(3), 899–921 (2008)MathSciNetzbMATHGoogle Scholar
  11. 11.
    Baumgarten, H., Jung, H., Mehlhorn, K.: Dynamic point location in general subdivisions. J. Algorithms 17(3), 342–380 (1994)MathSciNetzbMATHGoogle Scholar
  12. 12.
    Bender, M.A., Cole, R., Raman, R.: Exponential structures for efficient cache-oblivious algorithms. In: International Colloquium on Automata, Languages and Programming (ICALP), pp. 195–207 (2002)Google Scholar
  13. 13.
    Bentley, J.L., Saxe, J.B.: Decomposable searching problems I: static-to-dynamic transformation. J. Algorithms 1(4), 301–358 (1980)MathSciNetzbMATHGoogle Scholar
  14. 14.
    Bertino, E., Catania, B., Shidlovsky, B.: Towards optimal indexing for segment databases. In: Proceedings of Extending Database Technology (EDBT), pp. 39–53 (1998)Google Scholar
  15. 15.
    Cheng, S.-W., Janardan, R.: New results on dynamic planar point location. SIAM J. Comput. 21(5), 972–999 (1992)MathSciNetzbMATHGoogle Scholar
  16. 16.
    de Berg, M., Haverkort, H.J., Thite, S., Toma, L.: I/O-efficient map overlay and point location in low-density subdivisions. In: International Symposium on Algorithms and Computation (ISAAC), pp. 500–511 (2007)Google Scholar
  17. 17.
    den Bercken, J.V., Seeger, B., Widmayer, P.: A generic approach to bulk loading multidimensional index structures. In: Proceedings of Very Large Data Bases (VLDB), pp. 406–415 (1997)Google Scholar
  18. 18.
    Goodrich, M.T., Tsay, J.-J., Vengroff, D.E., Vitter, J.S.: External-memory computational geometry. In: Proceedings of Annual IEEE Symposium on Foundations of Computer Science (FOCS), pp. 714–723 (1993)Google Scholar
  19. 19.
    Haussler, D., Welzl, E.: Epsilon-nets and simplex range queries. Discrete Comput. Geom. 2, 127–151 (1987)MathSciNetzbMATHGoogle Scholar
  20. 20.
    Maheshwari, A., Zeh, N.: I/O-efficient planar separators. SIAM J. Comput. 38(3), 767–801 (2008)MathSciNetzbMATHGoogle Scholar
  21. 21.
    Overmars, M.H.: Range searching in a set of line segments. In: Proceedings of Symposium on Computational Geometry (SoCG), pp. 177–185 (1985)Google Scholar
  22. 22.
    Patrascu, M., Thorup, M.: Time–space trade-offs for predecessor search. In: Proceedings of ACM Symposium on Theory of Computing (STOC), pp. 232–240 (2006)Google Scholar
  23. 23.
    Sarnak, N., Tarjan, R.E.: Planar point location using persistent search trees. CACM 29(7), 669–679 (1986)MathSciNetzbMATHGoogle Scholar
  24. 24.
    van Walderveen, F., Zeh, N., Arge, L.: Multiway simple cycle separators and i/o-efficient algorithms for planar graphs. In: Proceedings of the Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 901–918 (2013)Google Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringChinese University of Hong KongShatinHong Kong

Personalised recommendations