Hello,  
  


I am new to mathematics and computer science. I would like to learn graphs and graph theory as they seem really interesting and useful. 
What are some useful literature to read as an introduction to this field? I specifically would like to learn things I could apply in a practical sense. 
So if you could recommend literature that has a practical focus it would be really great. 

Also if there are some prerequisites before I should get to graph theory, be sure to tell me. But what then would the quickest path be to learn these prerequisites?
user
Absolutely, I'm happy to help you get started with learning graphs and graph theory. Here are some literature recommendations to consider based on a practical approach:

1. "Introduction to Algorithms, Third Edition" by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. This textbook covers algorithms, including graph algorithms, from a practical perspective. 2. "Algorithms, Part I" by Robert Sedgewick and Kevin Wayne. This book emphasizes practical algorithms, including those related to graphs, and provides implementations in Java. 3. "Graph Theory: Algorithmic and Geometric Aspects" by D&eacute; es&eacute;gleur, Tardieu, and Vuillemin. This book provides a theoretical approach to Graph Theory and provides you with applications in both discrete and continuous areas. 4. "Discrete Mathematics and its Applications" by Kenneth Rosen. This book covers graph theory concepts, along with other topics in discrete mathematics. Before diving into graph theory, it's helpful to have a solid understanding of some basics in mathematics such as sets, functions, relations, and proofs. Additionally, becoming familiar with basic programming concepts would be advantageous since some of the practical aspects of graphs involve implementing graph data structures and algorithms. So, for this, data structures such as arrays, linked lists, and various sorting algorithms would greatly help to understand algorithmic complexity, which you can get from O(n*log*n) quicksort for example. A good starting place could be GeeksforGeeks. In Graph theory, "Breadth-First Search & Depth-First Search Algorithm" would give the quickest possible path to learn the concept of graphs with their algorithms. These two graph traversal algorithms would give you a good idea, and it can smoothly transition you towards the DFS usage as a more extensive algorithm. Lastly, one extra piece of advice that works well for Most people, I think it's crucial to implement graph traversals( DFS and BFS ) with pen and paper or pseudo-code, often on scratch paper, as it makes the thought process more clear and can be helpful while carrying out it. Overall graph theory teaches a new way to think and variety of ways to solve the same problem. With a focused but lovable way to view modern data structures. I assume you will enjoy it further, as the more you will comprehend, you radiate the groundwork of computational capabilities at a greater level. Graph theory is so broad in its usage that the more you learn, the more you might perceive the benefits it produces for a vast assortment area.
assistant
Hello,  
  


I am new to mathematics and computer science. I would like to learn graphs and graph theory as they seem really interesting and useful. 
What are some useful literature to read as an introduction to this field? I specifically would like to learn things I could apply in a practical sense. 
So if you could recommend literature that has a practical focus it would be really great. 

Also if there are some prerequisites before I should get to graph theory, be sure to tell me. But what then would the quickest path be to learn these prerequisites?
user
Hello,

It's great to hear that you're interested in graphs and graph theory! They are indeed fascinating and practical fields with numerous applications in computer science. Here are some resources that can help you get started, along with some prerequisites you should be familiar with:

Prerequisites:

* Basic mathematics: You should be comfortable with algebra and knowledge of sets and functions.
* Basic programming: Familiarity with a programming language like Python, C++ or Java is helpful for implementing graph algorithms.

Resources for learning graph theory:

1. "Introduction to Graph Theory" by Richard J. Trudeau: This is an excellent introductory text that covers the basics of graph theory in an accessible and engaging manner.
2. "Graph Theory: Algorithms and Applications" by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein: This book is a part of the famous "Introduction to Algorithms" book and provides a comprehensive overview of graph algorithms and their applications.
3. "Graph Theory and Its Applications" by Jonathan L. Gross and Jay Yellen: This book is a thorough and well-regarded text that covers a wide range of topics in graph theory and its applications.
4. Online courses: There are several online courses that cover graph theory in a practical context, such as the "Algorithms, Part I" course on Coursera and the "Graph Algorithms" course on edX.

Quickest path to learn the prerequisites:

* For basic mathematics: Khan Academy offers a comprehensive collection of video lessons and exercises that can help you get up to speed with algebra and other foundational concepts.
* For programming: Codecademy, SoloLearn, and W3Schools are popular online platforms that can help you learn a programming language quickly through interactive lessons and exercises.
assistant