A data structure that consists of nodes (vertices) connected by edges, where each edge has a weight and a direction.