Skip to content

Chincoya/Modelado2017-1

Repository files navigation

GraphTheory-Python3

Rafael Cartenet

I implemented an easy approach of the so-called graphs and the weighed graphs, in python 3

Graphs

I represented a graph as a python dictionnary, where the keys are the different nodes of the graph, and where the corresponding value of the key is a list containing all the nodes linked to this node. This is though a oriented graph.
Furthermore, I implemented typical graph theory functions like :

  • DFS (Depth First Search), finds an element in the graph traveling through the graph in depth first.
  • BFS (Breadth First Search), finds an element in the graph traveling through the graph in breadth first.

Weighed graphs

I represented a weighed graph as a dictionnary of dictionnaries, where to each node (a key) corresponds a dictionnary. In this dictionnary each key is a node and the corresponding value is the weigh from the key to the sub key.
I developped some interesting functions regarding the weighed graphs :

  • Kruskal, using Union Find, returns the nodes and edges of the minimum spanning tree of a given weighed graph.
  • Prim, using a BruteForce method, returns the nodes and edges of the minimum spanning tree of a given weighed graph.
  • Dijkstra, returns the shortest path from a node to another one, given the graph and the two nodes.

About

Graph theory in python 3. SOme algorithms are implemented

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages