Compact Implicit Representation of Graphs

(Extended Abstract)
  • Maurizio Talamo
  • Paola Vocca
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1517)


How to represent a graph in memory is a fundamental data structuring problem. In the usual representations, a graph is stored by representing explicitly all vertices and all edges. The names (labels) assigned to vertices are used only to encode the edges and betray nothing about the structure of the graph itself and hence are a “waste” of space. In this context, we present a general framework for labeling any graph so that adjacency between any two given vertices can be tested in constant time. The labeling schema assigns to each vertex x of a general graph a O(δ(x)log3n) bit label, where n is the number of vertices and δ(x) is x’s degree. The adjacency test can be performed in 5 steps and the schema can be computed in polynomial time. This representation strictly contrasts with usual representations, i.e. adjacency matrix and adjacency list representations, which require O(nlog n) bit label per vertex and constant time adjacency test, and O(δ(x)log n) bit label per vertex and O(logδ (x)) steps to test adjacency, respectively. Additionally, the labeling schema is implicit, that is: no pointers are used.


Bipartite Graph General Graph Label Schema Implicit Representation Node Basis 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho, A.V., Hopcroft, J.E., Ullman, J.D.: Design and Analysis of Computer Algorithms. Addison-Wesley, Reading (1974)zbMATHGoogle Scholar
  2. 2.
    Breuer, M.: Coding vertices of a graph. IEEE Trans. Infor. Theory 12, 148–153 (1966)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Breuer, M., Folkman, J.: An unexpected result on coding vertices. J. Math. Anal. Appl. 20, 583–600 (1967)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Frederickson, G.N.: Implicit data structures for the dictionary problem. J. of the ACM 30(1), 80–94 (1980)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Frederickson, G.N., Janardan, R.: Optimal message routing without complete routing tables. In: Proc. 5th Annual ACM Symposium on Principles of Distributed Computing, Calgary, August 1986, pp. 88–97 (1986)Google Scholar
  6. 6.
    Frederickson, G.N., Janardan, R.: Designing networks with compact routing tables. Algorithmica 3, 171–190 (1988)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Frederickson, G.N., Janardan, R.: Efficient message routing in planar networks. SIAM Journal on Computing 18, 843–857 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Frederickson, G.N., Janardan, R.: Space efficient message routing in c-decomposable networks. SIAM Journal on Computing 19, 164–181 (1990)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Gambosi, G., Vocca, P.: Topological Routing. In: Babaoğlu, Ö., Marzullo, K. (eds.) WDAG 1996. LNCS, vol. 1151, pp. 206–219. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  10. 10.
    Harary, F.: Graph Theory. Addison-Wesley, Reading (1972)zbMATHGoogle Scholar
  11. 11.
    Kannan, S., Naor, M., Rudich, S.: Implicit representation of graphs. SIAM Journal of Discrete Mathematics 5(4), 596–603 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    lan Munro, J.: An implicit data structure supporting inserting, deletion, and search in o(log2 n) time. J. of Comp. and Syst. Science 33, 66–74 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    lan Munro, J., Suwanda., H.: Implicit data structures for fast search and update. J. of Comp. and Syst. Science 21, 236–250 (1980)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Naor, M., Stockmeyer, L.: What can be computed locally? SIAM J.Comput. 24(6), 1259–1277 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Ouksel, M., Scheurmann, P.: Implicit data structure for linear hashing schemes. Inf. Proc. Letters 29, 183–189 (1988)CrossRefzbMATHGoogle Scholar
  16. 16.
    Santoro, N., Khatib, R.: Labelling and implicit routing in networks. Computer Journal 28(1), 5–8 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Talamo, M., Vocca, P.: A time optimal digraph browsing on a sparse representation. Technical Report 8, Math Department, University of Rome "Tor Vergata", Submitted to JGAA (1997)Google Scholar
  18. 18.
    Turan, G.: Succint representation of graphs. Discrete Appl. Math. 8, 289–284 (1984)Google Scholar
  19. 19.
    van Leeuwen, J. (ed.): Graph algorithms. Handbook of Theoretical Computer Science, vol. A, pp. 525–631. Elsevier Science Publisher B.V., Amsterdam (1990)zbMATHGoogle Scholar
  20. 20.
    van Leeuwen, J., Tan, R.B.: Computer networks with compact routing tables. In: Rozenberg, G., Salomaa, A. (eds.) The Book of L, vol. 790. Springer, Heidelberg (1986)Google Scholar
  21. 21.
    van Leeuwen, J., Tan, R.B.: Interval routing. Computer Journal 30, 298–307 (1987)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    van Leeuwen, J., Tan, R.B.: Compact routing methods: A survey. In: Proc. Colloquium on Structural Information and Communication Complexity (SICC 1994). Carleton University Press, Ottawa (1994)Google Scholar
  23. 23.
    Vitter, J.S., Shriver, E.A.M.: Algorithms for parallel memory, i: Two-level memories. Algorithmica 12(6), 110–147 (1994)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Maurizio Talamo
    • 1
  • Paola Vocca
    • 2
  1. 1.Dipartimento di Informatica e SistemisticaUniversità di Roma “La Sapienza”RomeItaly
  2. 2.Dipartimento di MatematicaUniversità di Roma “Tor Vergata”RomeItaly

Personalised recommendations