## graphs
* graph is a non-linear data structure consisting of vertices and edges. * in **undirected graphs**, the edges between any two vertices do not have a direction, indicating a two-way relationship. * in **directed graphs**, the edges between any two vertices are directional. * in **weighted graphs**, each edge has an associated weight. if the sum of the weights of all edges of a cycle is a negative values, it's a negative weight cycle. * the **degree of a vertex** is the number of edges connecting the vertex. in directed, graphs, if the **in-dregree** of a vertex is d, there are **d** directional edges incident to the vertex (and similarly, **out-degree** from the vertex).
--- ### traversals
* check **[../trees/#breath-first-search](https://github.com/go-outside-labs/master-python-with-algorithms-py/tree/master/trees#breath-first-search)** * and **[../trees/#depth-first-search](https://github.com/go-outside-labs/master-python-with-algorithms-py/tree/master/trees#depth-first-search)**