Useful Links
Computer Science
Algorithms and Data Structures
Data Structures
1. Introduction to Data Structures and Algorithms
2. Linear Data Structures
3. Hierarchical Data Structures
4. Hash-based Data Structures
5. Graph Data Structures
6. Advanced Data Structures
7. Practical Application and Selection
Graph Data Structures
Introduction to Graphs
Core Terminology
Vertex
Edge
Path
Cycle
Connectedness
Degree of Vertex
Types of Graphs
Undirected Graphs
Directed Graphs
Unweighted Graphs
Weighted Graphs
Cyclic Graphs
Acyclic Graphs
Directed Acyclic Graphs
Simple Graphs
Multigraphs
Self-loops
Graph Representations
Adjacency Matrix
Structure and Properties
Space Complexity
Time Complexity
Weighted Edge Representation
Adjacency List
Structure and Properties
Space Complexity
Time Complexity
Weighted Edge Representation
Edge List
Structure
Use Cases
Graph Traversal Algorithms
Breadth-First Search
Algorithm Implementation
Queue-based Approach
Shortest Path in Unweighted Graphs
Connected Components Detection
Depth-First Search
Algorithm Implementation
Recursive Approach
Iterative Approach
Cycle Detection
Topological Sort
Connected Components Detection
Common Graph Algorithms
Shortest Path Algorithms
Dijkstra's Algorithm
Priority Queue Usage
Non-negative Weight Limitation
Bellman-Ford Algorithm
Negative Weight Handling
Negative Cycle Detection
Floyd-Warshall Algorithm
All-Pairs Shortest Paths
Minimum Spanning Tree
Prim's Algorithm
Greedy Approach
Priority Queue Implementation
Kruskal's Algorithm
Edge Sorting
Disjoint Set Usage
Topological Sorting
Directed Acyclic Graph Requirement
Kahn's Algorithm
DFS-based Topological Sort
Previous
4. Hash-based Data Structures
Go to top
Next
6. Advanced Data Structures