Useful Links
Mathematics
Graph Theory
1. Introduction to Graph Theory
2. Fundamental Concepts and Types of Graphs
3. Representing Graphs
4. Paths, Walks, and Cycles
5. Graph Traversal
6. Trees and Forests
7. Shortest Path Algorithms
8. Network Flow
9. Graph Coloring
10. Planar Graphs
11. Matchings
12. Advanced Topics in Graph Theory
Graph Traversal
Eulerian Paths and Circuits
Definitions
Eulerian Path
Eulerian Circuit
Eulerian Graphs
Conditions for Existence
Degree Conditions for Undirected Graphs
In-degree and Out-degree Conditions for Directed Graphs
Necessary and Sufficient Conditions
Algorithms for Finding Eulerian Paths
Fleury's Algorithm
Algorithm Steps
Edge Selection Rules
Complexity Analysis
Hierholzer's Algorithm
Algorithm Steps
Efficiency Improvements
Hamiltonian Paths and Circuits
Definitions
Hamiltonian Path
Hamiltonian Circuit
Hamiltonian Graphs
Sufficient Conditions
Dirac's Theorem
Ore's Theorem
Other Sufficient Conditions
Necessary Conditions
Vertex Degree Requirements
Structural Constraints
Computational Complexity
NP-Completeness of Hamiltonian Cycle Problem
Implications for Algorithm Design
Approximation and Heuristic Approaches
Graph Traversal Algorithms
Breadth-First Search (BFS)
Algorithm Description
Implementation with Queues
BFS Tree
Level Structure
Applications
Shortest Path in Unweighted Graphs
Connected Component Detection
Bipartiteness Testing
Depth-First Search (DFS)
Algorithm Description
Implementation with Stacks/Recursion
DFS Tree
Parenthesis Theorem
Edge Classification
Tree Edges
Back Edges
Forward Edges
Cross Edges
Applications
Cycle Detection
Topological Sorting
Strongly Connected Components
Previous
4. Paths, Walks, and Cycles
Go to top
Next
6. Trees and Forests