Abstract
We present a technique for representing bounded-degree planar graphs in a succinct fashion while permitting I/O-efficient traversal of paths. Using our representation, a graph with N vertices, (In this paper \(\lg {N}\) denotes \(\log _2{N}\)) each with an associated key of \(q= \mathrm {O}\left( \lg N\right) \) bits, can be stored in \(Nq+ \mathrm {O}\left( N\right) + \mathrm {o}\left( Nq\right) \) bits and traversing a path of length K takes \(\mathrm {O}\left( K / \lg B\right) \) I/Os, where B denotes the disk block size. By applying our construction to the dual of a terrain represented as a triangular irregular network, we can represent the terrain in the above space bounds and support path traversals on the terrain using \(\mathrm {O}\left( K / \lg B\right) \) I/Os, where K is the number of triangles visited by the path. This is useful for answering a number of queries on the terrain, such as reporting terrain profiles, trickle paths, and connected components.
Similar content being viewed by others
Notes
Note that \(\log \left( {\begin{array}{c}N\\ R\end{array}}\right) + \mathrm {O}\left( N \log \log N / \log N\right) = \mathrm {o}\left( N\right) \) as long as \(R = \mathrm {o}\left( N\right) \).
This ordering, as with the ordering used for assigning graph labels, is employed strictly for labeling purposes. It does not imply any arrangement of vertices within the structures used to represent the graph.
\(\lg r_2\) bits would suffice; however it simplifies the analysis to use \(\lg N\) bits.
We omit some minor details that are not relevant to triangles.
All edges on the convex hull of \({\mathscr {T}}\) are considered wall edges.
References
Agarwal, P.K., Arge, L., Murali, T.M., Varadarajan, K.R., Vitter, J.S.: I/O-efficient algorithms for contour-line extraction and planar graph blocking (extended abstract). In: SODA, pp. 117–126 (1998)
Aggarwal, A., Vitter, J.S.: The input/output complexity of sorting and related problems. Commun. ACM 31(9), 1116–1127 (1988)
Aleardi, L.C., Devillers, O., Schaeffer, G.: Succinct representation of triangulations with a boundary. In: Dehne, F.K.H.A., López-Ortiz, A., Sack, J.R. (eds.) WADS. Lecture Notes in Computer Science, vol. 3608, pp. 134–145. Springer, Berlin (2005)
Aleardi, L.C., Devillers, O., Schaeffer, G.: Succinct representations of planar maps. Theor. Comput. Sci. 408(2–3), 174–187 (2008)
Arge, L., Danner, A., Teh, S.M.: I/O-efficient point location using persistent b-trees. In: Ladner, R.E. (ed.) ALENEX, pp. 82–92, Baltimore, MD (2003)
Barbay, J., Aleardi, L.C., He, M., Munro, J.I.: Succinct representation of labeled graphs. In: Tokuyama, T. (ed.) ISAAC. Lecture Notes in Computer Science, vol. 4835, pp. 316–328. Springer, Berlin (2007)
Baswana, S., Sen, S.: Planar graph blocking for external searching. Algorithmica 34(3), 298–308 (2002)
de Berg, M., Bose, P., Dobrindt, K., van Kreveld, M.J., Overmars, M.H., de Groot, M., Roos, T., Snoeyink, J., Yu, S.: The complexity of rivers in triangulated terrains. In: CCCG, pp. 325–330 (1996)
de Berg, M., van Kreveld, M.J., van Oostrum, R., Overmars, M.H.: Simple traversal of a subdivision without extra storage. Int. J. Geogr. Inf. Sci. 11(4), 359–373 (1997)
Bernhart, F., Kainen, P.C.: The book thickness of a graph. J. Comb. Theory Ser. B 27(3), 320–331 (1979)
Blandford, D.K., Blelloch, G.E., Kash, I.A.: Compact representations of separable graphs. In: SODA, pp. 679–688 (2003)
Bose, P., Chen, E.Y., He, M., Maheshwari, A., Morin, P.: Succinct geometric indexes supporting point location queries. ACM Trans. Algorithms 8(2), 10 (2012)
Bose, P., Morin, P.: An improved algorithm for subdivision traversal without extra storage. In: Lee, D.T., Teng, S.H. (eds.) ISAAC. Lecture Notes in Computer Science, vol. 1969, pp. 444–455. Springer, Berlin (2000)
Chiang, Y.T., Lin, C.C., Lu, H.I.: Orderly spanning trees with applications. SIAM J. Comput. 34(4), 924–945 (2005)
Chien, Y.F., Hon, W.K., Shah, R., Vitter, J.S.: Geometric Burrows–Wheeler transform: linking range searching and text indexing. In: DCC, pp. 252–261. IEEE Computer Society (2008)
Chuang, R.C.N., Garg, A., He, X., Kao, M.Y., Lu, H.I.: Compact encodings of planar graphs via canonical orderings and multiple parentheses. ICALP’98: Proceedings of the 25th International Colloquium on Automata. Languages and Programming, pp. 118–129. Springer, London (1998)
Clark, D.R., Munro, J.I.: Efficient suffix trees on secondary storage. In: SODA, pp. 383–391 (1996)
Dillabaugh, C., He, M., Maheshwari, A.: Succinct and I/O efficient data structures for traversal in trees. In: Hong, S.H., Nagamochi, H., Fukunaga, T. (eds.) ISAAC. Lecture Notes in Computer Science, vol. 5369, pp. 112–123. Springer, Berlin (2008)
Dillabaugh, C., He, M., Maheshwari, A.: Succinct and I/O efficient data structures for traversal in trees. Algorithmica 63(1–2), 201–223 (2012)
Farzan, A., Munro, J.I.: Succinct representations of arbitrary graphs. In: Halperin, D., Mehlhorn, K. (eds.) ESA. Lecture Notes in Computer Science, vol. 5193, pp. 393–404. Springer, Berlin (2008)
Frederickson, G.N.: Fast algorithms for shortest paths in planar graphs, with applications. SIAM J. Comput. 16(6), 1004–1022 (1987)
Gavoille, C., Hanusse, N.: On compact encoding of pagenumber k graphs. Discrete Math. Theor. Comput. Sci. 10(3), 23–34 (2008)
Gold, C., Cormack, S.: Spatially ordered networks and topographic reconstructions. In: Proceedings 2nd International Symposium on Spatial Data Handling, pp. 74–85 (1986)
Gold, C.M., Maydell, U.M.: Triangulation and spatial ordering in computer cartography. In: Proceedings Canadian Cartographic Association third annual meeting, pp. 69–81 (1978)
Jacobson, G.: Space-efficient static trees and graphs. FOCS 42, 549–554 (1989)
Kirkpatrick, D.G.: Optimal search in planar subdivisions. SIAM J. Comput. 12(1), 28–35 (1983)
Miller, G.: Balanced cyclic separator for 2-connected planar graphs. J. Comput. Syst. Sci. 32(3), 265–279 (1986)
Munro, J.I., Raman, V.: Succinct representation of balanced parentheses, static trees and planar graphs. In: FOCS, pp. 118–126 (1997)
Nodine, M.H., Goodrich, M.T., Vitter, J.S.: Blocking for external graph searching. Algorithmica 16(2), 181–214 (1996)
Raman, R., Raman, V., Satti, S.R.: Succinct indexable dictionaries with applications to encoding k-ary trees, prefix sums and multisets. ACM Trans. Algorithms 3(4), 43 (2007)
Yamanaka, K., Nakano, S.I.: A compact encoding of plane triangulations with efficient query supports. In: Nakano, S.I., Rahman, M.S. (eds.) WALCOM. Lecture Notes in Computer Science, vol. 4921, pp. 120–131. Springer, Berlin (2008)
Yannakakis, M.: Four pages are necessary and sufficient for planar graphs (extended abstract). In: STOC, pp. 104–108. ACM (1986)
Acknowledgments
The authors wish to thank the School of Computer Science, Carleton University and the Natural Sciences and Engineering Research Council of Canada for financial assistance. The work was done while the second author was at the School of Computer Science, Carleton University, Canada.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Dillabaugh, C., He, M., Maheshwari, A. et al. I/O-Efficient Path Traversal in Succinct Planar Graphs. Algorithmica 77, 714–755 (2017). https://doi.org/10.1007/s00453-015-0086-7
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00453-015-0086-7