Discrete & Computational Geometry

, Volume 53, Issue 3, pp 489–513 | Cite as

On Constant Factors in Comparison-Based Geometric Algorithms and Data Structures

  • Timothy M. Chan
  • Patrick Lee


Many standard problems in computational geometry have been solved asymptotically optimally as far as comparison-based algorithms are concerned, but there has been little work focusing on improving the constant factors hidden in big-Oh bounds on the number of comparisons needed. In this paper, we consider orthogonal-type problems and present a number of results that achieve optimality in the constant factors of the leading terms, including
  • an algorithm for the 2D maxima problem that uses \(n\lg h + O(n\sqrt{\lg h})\) comparisons, where \(h\) denotes the output size;

  • a randomized algorithm for the 3D maxima problem that uses \(n\lg h + O(n\lg ^{2/3} h)\) expected number of comparisons;

  • a randomized algorithm for detecting intersections among a set of orthogonal line segments that uses \(n\lg n + O(n\sqrt{\lg n})\) expected number of comparisons;

  • a data structure for point location among 3D disjoint axis-parallel boxes that can answer queries in \((3/2)\lg n + O(\lg \lg n)\) comparisons;

  • a data structure for point location in a 3D box subdivision that can answer queries in \((4/3)\lg n + O(\sqrt{\lg n})\) comparisons.

Some of the results can be adapted to solve nonorthogonal problems, such as 2D convex hulls and general line segment intersection. Our algorithms and data structures use a variety of techniques, including Seidel and Adamy’s planar point location method, weighted binary search, and height-optimal BSP trees.


Comparison-based algorithms Maxima Convex hull  Line segment intersection Point location Binary space partition 


  1. 1.
    Afshani, P., Barbay, J., Chan, T.M.: Instance-optimal geometric algorithms. In: Proceedings of the 50th Annual IEEE Symposium on Foundations of Computer Science, pp. 129–138 (2009)Google Scholar
  2. 2.
    Arya, S., Malamatos, T., Mount, D.M., Wong, K.C.: Optimal expected-case planar point location. SIAM J. Comput. 37, 584–610 (2007)CrossRefzbMATHMathSciNetGoogle Scholar
  3. 3.
    Ben-Or, M.: Lower bounds for algebraic computation trees. In: Proceedings of the 15th Annual ACM Symposium on Theory of Computing, pp. 80–86 (1983)Google Scholar
  4. 4.
    Bentley, J.L., Ottmann, T.A.: Algorithms for reporting and counting geometric intersections. IEEE Trans. Comput. C-28(9), 643–647 (1979)Google Scholar
  5. 5.
    Chan, T.M.: Optimal output-sensitive convex hull algorithms in two and three dimensions. Discrete Comput. Geom. 16, 361–368 (1996)CrossRefzbMATHMathSciNetGoogle Scholar
  6. 6.
    Chan, T.M.: Output-sensitive results on convex hulls, extreme points, and related problems. Discrete Comput. Geom. 16, 369–387 (1996)CrossRefzbMATHMathSciNetGoogle Scholar
  7. 7.
    Chan, T.M.: Klee’s measure problem made easy. In: Proceedings of the 54th Annual IEEE Symposium on Foundations of Computer Science, pp. 410–419 (2013)Google Scholar
  8. 8.
    Chan, T.M.: Persistent predecessor search and orthogonal point location on the word RAM. ACM Trans. Algorithms 9(3), 22 (2013)CrossRefMathSciNetGoogle Scholar
  9. 9.
    Chan, T.M., Chen, E.Y.: Multi-pass geometric algorithms. Discrete Comput. Geom. 37, 79–102 (2007)CrossRefzbMATHMathSciNetGoogle Scholar
  10. 10.
    Chan, T.M., Pǎtraşcu, M.: Transdichotomous results in computational geometry, I: Point location in sublogarithmic time. SIAM J. Comput. 39, 703–729 (2009)CrossRefzbMATHMathSciNetGoogle Scholar
  11. 11.
    Chan, T.M., Larsen, K.G., Pǎtraşcu, M.: Orthogonal range searching on the RAM, revisited. In: Proceedings of the 27th Annual Symposium on Computational Geometry, pp. 1–10 (2011)Google Scholar
  12. 12.
    Chan, T.M., Snoeyink, J., Yap, C.K.: Primal dividing and dual pruning: Output-sensitive construction of 4-d polytopes and 3-d Voronoi diagrams. Discrete Comput. Geom. 18, 433–454 (1997)CrossRefzbMATHMathSciNetGoogle Scholar
  13. 13.
    Chazelle, B., Dobkin, D.P.: Intersection of convex objects in two and three dimensions. J. ACM 34(1), 1–27 (1987)CrossRefMathSciNetGoogle Scholar
  14. 14.
    Chazelle, B., Matoušek, J.: Derandomizing an output-sensitive convex hull algorithm in three dimensions. Comput. Geom. Theory Appl. 5, 27–32 (1995)CrossRefzbMATHGoogle Scholar
  15. 15.
    Chazelle, B., Edelsbrunner, H., Guibas, L.J., Sharir, M.: Algorithms for bichromatic line segment problems and polyhedral terrains. Algorithmica 11, 116–132 (1994)CrossRefzbMATHMathSciNetGoogle Scholar
  16. 16.
    Clarkson, K.L.: New applications of random sampling in computational geometry. Discrete Comput. Geom. 2, 195–222 (1987)CrossRefzbMATHMathSciNetGoogle Scholar
  17. 17.
    Clarkson, K.L.: More output-sensitive geometric algorithms. In: Proceedings of the 35th Annual IEEE Symposium Foundations of Computer Science, pp. 695–702 (1994)Google Scholar
  18. 18.
    Clarkson, K.L., Shor, P.W.: Applications of random sampling in computational geometry. II. Discrete Comput. Geom. 4, 387–421 (1989)CrossRefzbMATHMathSciNetGoogle Scholar
  19. 19.
    Cunto, W., Munro, J.I.: Average case selection. J. ACM 36, 270–279 (1989)CrossRefzbMATHMathSciNetGoogle Scholar
  20. 20.
    Dobkin, D.P., Lipton, R.J.: On the complexity of computations under varying sets of primitives. J. Comput. Syst. Sci. 18, 86–91 (1979)CrossRefzbMATHMathSciNetGoogle Scholar
  21. 21.
    Dor, D., Zwick, U.: Selecting the median. SIAM J. Comput. 28, 1722–1758 (1999)CrossRefzbMATHMathSciNetGoogle Scholar
  22. 22.
    Dor, D., Zwick, U.: Median selection requires \((2+\varepsilon )n\) comparisons. SIAM J. Discrete Math. 14, 312–325 (2001)CrossRefzbMATHMathSciNetGoogle Scholar
  23. 23.
    Dubé, T.: Dominance range-query: the one-reporting case. In: Proceedings of the 9th Annual ACM Symposium on Computational Geometry, pp. 208–217 (1993)Google Scholar
  24. 24.
    Dumitrescu, A., Mitchell, J.S.B., Sharir, M.: Binary space partitions for axis-parallel segments, rectangles, and hyperrectangles. Discrete Comput. Geom. 31, 207–227 (2004)CrossRefzbMATHMathSciNetGoogle Scholar
  25. 25.
    Ford, L.R. jr., Johnson, S.M.: A tournament problem. Am. Math. Monthly 66, 387–389 (1959)Google Scholar
  26. 26.
    Frederickson, G.N., Johnson, D.B.: The complexity of selection and ranking in \(X+Y\) and matrices with sorted rows and columns. J. Comput. Syst. Sci. 24, 197–208 (1982)CrossRefzbMATHMathSciNetGoogle Scholar
  27. 27.
    Golin, M.J.: A provably fast linear-expected-time maxima-finding algorithm. Algorithmica 11, 501–524 (1994)CrossRefzbMATHMathSciNetGoogle Scholar
  28. 28.
    Gonnet, G.H., Munro, J.I.: Heaps on heaps. SIAM J. Comput. 15, 964–971 (1986)CrossRefzbMATHMathSciNetGoogle Scholar
  29. 29.
    Graham, R.L.: An efficient algorithm for determining the convex hull of a finite planar set. Inf. Process. Lett. 1, 132–133 (1972)CrossRefzbMATHGoogle Scholar
  30. 30.
    Hershberger, J., Suri, S., Tóth, C.D.: Binary space partitions of orthogonal subdivisions. SIAM J. Comput. 34, 1380–1397 (2005)CrossRefzbMATHMathSciNetGoogle Scholar
  31. 31.
    Jarvis, R.A.: On the identification of the convex hull of a finite set of points in the plane. Inf. Process. Lett. 2, 18–21 (1973)Google Scholar
  32. 32.
    Kaligosi, K., Mehlhorn, K., Munro, J.I., Sanders, P.: Towards optimal multiple selection. In: Proceedings of the 32nd International Colloquium Automata, Languages and Programming. Lecture Notes in Computer Science, vol. 3580, pp. 103–114. Springer, Heidelberg (2005)Google Scholar
  33. 33.
    Kirkpatrick, D.G., Seidel, R.: Output-size sensitive algorithms for finding maximal vectors. In: Proceedings of the 1st Annual ACM Symposium Computational Geometry, pp. 89–96 (1985)Google Scholar
  34. 34.
    Kirkpatrick, D.G., Seidel, R.: The ultimate planar convex hull algorithm? SIAM J. Comput. 15, 287–299 (1986)CrossRefzbMATHMathSciNetGoogle Scholar
  35. 35.
    Knuth, D.E.: Sorting and Searching. The Art of Computer Programming, vol. 3. Addison-Wesley, Reading (1973)Google Scholar
  36. 36.
    Kung, H.T., Luccio, F., Preparata, F.P.: On finding the maxima of a set of vectors. J. ACM 22, 469–476 (1975)CrossRefzbMATHMathSciNetGoogle Scholar
  37. 37.
    Li, Z., Reed, B.A.: Heap building bounds. In: Proceedings of the 9th Workshop Algorithms Data Structures, vol. 3608, pp. 14–23. Springer, Heidelberg (2005)Google Scholar
  38. 38.
    Liotta, G., Preparata, F.P., Tamassia, R.: Robust proximity queries: an illustration of degree-driven algorithm design. SIAM J. Comput. 28(3), 864–889 (1998)CrossRefMathSciNetGoogle Scholar
  39. 39.
    Mehlhorn, K.: Data Structures and Algorithm 1: Sorting and Searching. EATCS Monographs on Theoretical Computer Science, vol. 1. Springer, Heidelberg (1981)Google Scholar
  40. 40.
    Mulmuley, K.: Computational Geometry: An Introduction Through Randomized Algorithms. Prentice Hall, Englewood Cliffs (1993)zbMATHGoogle Scholar
  41. 41.
    Ottmann, T., Schuierer, S., Soundaralakshmi, S.: Enumerating extreme points in higher dimensions. In: Proceedings of the 12th Symposium on Theoretical Aspects of Computer Science. Lecture Notes on Computer Science, vol. 900, pp. 562–570. Springer, Heidelberg (1995)Google Scholar
  42. 42.
    Overmars, M.H., Yap, C.-K.: New upper bounds in Klee’s measure problem. SIAM J. Comput. 20, 1034–1045 (1991)CrossRefzbMATHMathSciNetGoogle Scholar
  43. 43.
    Paterson, M.S., Yao, F.F.: Optimal binary space partitions for orthogonal objects. J. Algorithms 13, 99–113 (1992)CrossRefzbMATHMathSciNetGoogle Scholar
  44. 44.
    Preparata, F.P.: A new approach to planar point location. SIAM J. Comput. 10(3), 473–482 (1981)CrossRefzbMATHMathSciNetGoogle Scholar
  45. 45.
    Preparata, F.P., Shamos, M.I.: Computational Geometry: An Introduction. Springer, New York (1985)CrossRefGoogle Scholar
  46. 46.
    Seidel, R., Adamy, U.: On the exact worst case complexity of planar point location. J. Algorithms 37, 189–217 (2000)CrossRefzbMATHMathSciNetGoogle Scholar
  47. 47.
    Tóth, C.D.: Binary space partitions: Recent developments. In: Combinatorial and Computational Geometry. MSRI Publications, vol. 52, pp. 525–552. Cambridge University Press, Cambridge (2005)Google Scholar
  48. 48.
    van Emde Boas, P.: On the \(\varOmega (n \log n)\) lower-bound for convex hull and maximal vector determination. Inf. Process. Lett. 10, 132–136 (1980)Google Scholar

Copyright information

© Springer Science+Business Media New York 2015

Authors and Affiliations

  1. 1.Cheriton School of Computer ScienceUniversity of WaterlooWaterlooCanada

Personalised recommendations