Learn Graphs
Learn the graphs data structure using Python. Graphs are the perfect data structure for modeling networks!
StartKey Concepts
Review core concepts you need to learn to master this subject
Implementing a Graph Class
Implementing a Graph Class
class Vertex:
"""Key methods of Vertex class"""
def __init__(self, value):
def add_edge(self, vertex, weight = 0):
def get_edges(self):
class Graph:
"""Key methods of Graph class"""
def __init__(self, directed = False):
def add_vertex(self, vertex):
def add_edge(self, from_vertex, to_vertex, weight = 0):
def find_path(self, start_vertex, end_vertex):
The basis of a Graph
class in Python is the implementation of two classes, Graph
and Vertex
, which establish the essential functionality to create a variety of graphs.
The Vertex
class allows for storage of connecting vertices with a dictionary and adjustment of their edges as well.
The Graph
class builds upon the Vertex
methods and allows addition of vertices and edges, setting the directionality of edges, and determining if a path exists between two vertices.
- 1Graphs are the perfect data structure for modeling networks, which make them an indispensable piece of your data structure toolkit. They’re composed of nodes, or vertices, which hold data, and _…
- 2Graphs have varying degrees of connection. The higher the ratio of edges to vertices, the more connected the graph. This graph represents a social network; people are vertices and edges are friend…
- 3We’re building a graph of favorite neighborhood destinations (vertices) and routes (edges), but not all edges are equal. It takes longer to travel between Gym and Museum than it does to travel bet…
- 4Imagine you’re a superhero escaping a villain’s lair. As you move from perilous room to perilous room, the doors close immediately behind you, barring any return. For this dramatic example, we n…
- 5We typically represent the vertex-edge relationship of a graph in two ways: an adjacency list or an adjacency matrix. An adjacency matrix is a table. Across the top, every vertex in the graph ap…
- 6Graphs are an essential data structure in computer science for modeling networks. Let’s review some key terms: * vertex: A node in a graph. * edge: A connection between two vertices. * adjacent: W…
What you'll create
Portfolio projects that showcase your new skills
How you'll master it
Stress-test your knowledge with quizzes that help commit syntax to memory