Data Structures22 min read
Graph Intro
Understand graphs as networks: adjacency lists, BFS/DFS traversal, and why graphs appear in maps, social networks, and recommendation systems.
David Miller
September 23, 2025
6.2k146
A graph represents connections between things.
Examples:
- roads between cities
- followers on social media
- dependencies in projects
Adjacency list (best common representation)
graph = {
"A": ["B", "C"],
"B": ["D"],
"C": ["D"],
"D": []
}
DFS traversal
def dfs(graph, start):
visited = set()
def visit(node):
if node in visited:
return
visited.add(node)
print(node)
for nxt in graph.get(node, []):
visit(nxt)
visit(start)
dfs(graph, "A")
BFS traversal
from collections import deque
def bfs(graph, start):
visited = set([start])
q = deque([start])
while q:
node = q.popleft()
print(node)
for nxt in graph.get(node, []):
if nxt not in visited:
visited.add(nxt)
q.append(nxt)
bfs(graph, "A")
Graph diagram
flowchart LR
A --> B
A --> C
B --> D
C --> D
Remember
- Graph = nodes + edges
- adjacency list is common in Python
- DFS and BFS are core traversal tools
#Python#Advanced#Graph