Skip to main content

Graph Traversal

  • Chapter
  • First Online:
Algorithms on Trees and Graphs

Part of the book series: Texts in Computer Science ((TCS))

  • 2611 Accesses

Abstract

Most algorithms on graphs require a systematic method of visiting the vertices of a graph. Two basic and common methods of exploring a graph are the generalization to graphs of the preorder traversal and the top-down traversal of trees. In a depth-first traversal of a graph, also known as depth-first search, the vertices reachable from a given, initial vertex are visited before their adjacent vertices, and those vertices which a visited vertex is adjacent with are visited in first-to-last order. In a breadth-first traversal of a graph, also known as breadth-first search, the vertices reachable from a given initial vertex are visited in order of non-decreasing distance from the initial vertex. These systematic methods of visiting the vertices of a graph are the subject of this chapter.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 49.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 64.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 99.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

Institutional subscriptions

References

  1. Alt H, Blum N, Mehlhorn K, Paul M (1991) Computing a maximum cardinality matching in a bipartite graph in time \(O(n^{1.5}sqrt{m}/log n)\). Inf Process Lett 37(4):237–240

    Google Scholar 

  2. Berge C (1957) Two theorems in graph theory. Proc Natl Acad Sci U S A 43(9):842–844

    Google Scholar 

  3. Berge C (1985) Graphs and hypergraphs, 2nd edn. North-Holland, Amsterdam

    Google Scholar 

  4. Bourgeois F, Lassalle JC (1971) An extension of the Munkres algorithm for the assignment problem to rectangular matrices. Commun ACM 14(12):802–804

    Google Scholar 

  5. Burkard R, Dell’Amico M, Martello S (2009) Assignment problems. Society for Industrial and Applied Mathematics, Philadelphia PA

    Google Scholar 

  6. Carpaneto G, Martello S, Toth P (1988) Algorithms and codes for the assignment problem. Ann Oper Res 13(1):191–223

    Google Scholar 

  7. Chakraborty S, Mukherjee A, Satti SR (2019) Space efficient algorithms for breadth-depth search. In: Ga̧sieniec LA, Jansson J, Levcopoulos C (eds) Proceedings 22nd international symposium fundamentals of computation theory, lecture notes in computer science, vol 11651. Springer, Berlin, pp 201–212

    Google Scholar 

  8. Cormen TH, Leiserson CE, Rivest RL, Stein C (2009) Introduction to algorithms, 3rd edn. MIT Press, Cambridge MA

    Google Scholar 

  9. Cui H, Zhang J, Cui C, Chen Q (2016) Solving large-scale assignment problems by Kuhn-Munkres algorithm. In: Xu M, Zhang K (eds) Proceedings, vol 73. 2nd international conference on advances in mechanical engineering and industrial informatics, Advances in engineering research. Atlantis Press, Paris, France, pp 822–827

    Google Scholar 

  10. Dell’Amico M, Toth P (2000) Algorithms and codes for dense assignment problems: the state of the art. Discret Appl Math 100(1–2):17–48

    Google Scholar 

  11. Duff IS, Wiberg T (1988) Remarks on implementation of \({O}(n^{1/2}\tau )\) assignment algorithms. ACM Trans Math Softw 14(3):267–287

    Google Scholar 

  12. Edmonds J, Karp RM (1972) Theoretical improvements in algorithmic efficiency for network flow problems. J ACM 19(2):248–264

    Google Scholar 

  13. Egerváry J (1931) Matrixok kombinatorius tulajdonságairól. Matematikai és Fizikai Lapok 38(1):16–28

    Google Scholar 

  14. Ford LR, Fulkerson DR (1962) Flows in networks. Princeton University Press, Princeton NJ

    Google Scholar 

  15. Hopcroft JE, Karp RM (1973) An \(n^{5/2}\) algorithm for maximum matchings in bipartite graphs. SIAM J Comput 2(4):225–231

    Google Scholar 

  16. Hopcroft JE, Tarjan RE (1973) An \({O}(n \log n)\) algorithm for isomorphism of triconnected planar graphs. J Comput Syst Sci 7(3):323–331

    Google Scholar 

  17. Jiang XY, Bunke H (1999) Optimal quadratic-time isomorphism of ordered graphs. Pattern Recognit 32(7):1273–1283

    Google Scholar 

  18. Karp RM (1980) An algorithm to solve the \(m \times n\) assignment problem in expected time \({O}(mn \log n)\). Networks 10(2):143–152

    Google Scholar 

  19. Kőnig D (1931) Graphok és matrixok. Matematikai és Fizikai Lapok 38(1):116–119

    Google Scholar 

  20. Korach E, Ostfeld Z (1989) DFS tree construction: algorithms and characterization. In: van Leeuwen J (ed) Proceedings 14th international workshop graph-theoretic concepts in computer science, vol 344. Lecture notes in computer science. Springer, Berlin Heidelberg, pp 87–106

    Google Scholar 

  21. Kuhn HW (1955) The Hungarian method for the assignment problem. Naval Res Logistics Q 2(1–2):83–97

    Google Scholar 

  22. Kuhn HW (1956) Variants of the Hungarian method for assignment problems. Naval Res Logistics Q 3(4):253–258

    Google Scholar 

  23. Lee CY (1961) An algorithm for path connection and its applications. IRE Trans Electron Comput 10(3):346–365

    Google Scholar 

  24. Lovász L, Plummer MD (1986) Matching theory, North-Holland Mathematics Studies, vol 121. North-Holland, Leipzig, Germany

    Google Scholar 

  25. Manber U (1990) Recognizing breadth-first search trees in linear time. Inf Process Lett 34(4):167–171

    Article  MathSciNet  Google Scholar 

  26. Martello S (2010) Jenő Egerváry: From the origins of the Hungarian algorithm to satellite communication. Central Euro J Oper Res 18(1):47–58

    Google Scholar 

  27. Mehlhorn K, Näher S (1999) The LEDA platform of combinatorial and geometric computing. Cambridge University Press, Cambridge, England

    Google Scholar 

  28. Moore EF (1959) The shortest path through a maze. In: Proceedings of international symposium theory of switching. Harvard University Press, Cambridge MA, pp 285–292

    Google Scholar 

  29. Munkres J (1957) Algorithms for the assignment and transportation problems. J Soc Ind Appl Math 5(1):32–38

    Google Scholar 

  30. Papadimitriou CH, Steiglitz K (1998) Combinatorial optimization: algorithms and complexity. Dover, Mineola NY

    Google Scholar 

  31. Peng CH, Wang BF, Wang JS (2000) Recognizing unordered depth-search trees of an undirected graph in parallel. IEEE Trans Parallel Distrib Syst 11(6):559–570

    Google Scholar 

  32. Petersen J (1891) Die Theorie der regulären Graphs. Acta Math 15(1):193–220

    Google Scholar 

  33. Reif JH (1985) Depth-first search is inherently sequential. Inf Process Lett 20(5):229–234

    Article  MathSciNet  Google Scholar 

  34. Schevon CA, Vitter JS (1988) A parallel algorithm for recognizing unordered depth-first search. Inf Process Lett 28(2):105–110

    Google Scholar 

  35. Schlieder C (1998) Diagrammatic transformation processes on two-dimensional relational maps. J Vis Lang Comput 9(1):45–59

    Google Scholar 

  36. Silver R (1960) An algorithm for the assignment problem. Commun ACM 3(11):605–606

    Google Scholar 

  37. Tarjan RE (1972) Depth-first search and linear graph algorithms. SIAM J Comput 1(2):146–160

    Google Scholar 

  38. Tarjan RE (1983) Space-efficient implementations of graph search methods. ACM Trans Math Softw 9(3):326–339

    Google Scholar 

  39. Tomizawa N (1971) On some techniques useful for solution of transportation network problems. Networks 1(2):173–194

    Google Scholar 

  40. Valiente G (2001) A general method for graph isomorphism. In: Freivalds R (ed) Proceedings 13th international symposium fundamentals of computation theory, vol 2138. Lecture notes in computer science. Springer, Berlin Heidelberg, pp 428–431

    Google Scholar 

  41. Weinberg L (1966) A simple and efficient algorithm for determining isomorphism of planar triply connected graphs. IEEE Trans Circuit Theory 13(2):142–148

    Google Scholar 

  42. Wong JK (1979) A new implementation of an algorithm for the optimal assignment problem: An improved version of Munkres’ algorithm. BIT Numer Math 19(3):418–424

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gabriel Valiente .

Rights and permissions

Reprints and permissions

Copyright information

© 2021 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Valiente, G. (2021). Graph Traversal. In: Algorithms on Trees and Graphs. Texts in Computer Science. Springer, Cham. https://doi.org/10.1007/978-3-030-81885-2_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-81885-2_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-81884-5

  • Online ISBN: 978-3-030-81885-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics