X-Git-Url: https://git.piment-noir.org/?p=Algorithmic_C.git;a=blobdiff_plain;f=TP7%2Fexo1%2Fgraphs.h;fp=TP7%2Fexo1%2Fgraphs.h;h=734b96f16f83a072a980d42a1dd3606606eec3fc;hp=0000000000000000000000000000000000000000;hb=fa5222dc2ee8985f1dfc9cbe9aea61fa01004b09;hpb=8482ea7ec972a9cc81fa904f36ed1bf1ab7073d3 diff --git a/TP7/exo1/graphs.h b/TP7/exo1/graphs.h new file mode 100644 index 0000000..734b96f --- /dev/null +++ b/TP7/exo1/graphs.h @@ -0,0 +1,31 @@ +#ifndef GRAPHS_H +#define GRAPHS_H + +#include +#include + +#include "list.h" + +/* number of nodes or vertices or points */ +//const unsigned int num_nodes = 10; +#define num_nodes 5 + +/* Adjacency matrix */ +/* for a valued graph */ +int M[num_nodes][num_nodes]; +/* for an oriented graph */ +//bool M[num_nodes][num_nodes]; + +/* Adjacency list */ +typedef struct succ_list_s { + unsigned int num_node; + int val; + struct list_head list; +} succ_list_t; +//succ_list_t* nodes[num_nodes] = { NULL }; + +void display_adj_matrix(int adj_matrix[num_nodes][num_nodes]); +void convert_adj_matrix_to_adj_lists(int adj_matrix[num_nodes][num_nodes], succ_list_t* nodes[num_nodes]); +void display_adj_lists(succ_list_t* nodes[num_nodes]); + +#endif