libin103 1.4
Bibliothèque de structures de données en C
Chargement...
Recherche...
Aucune correspondance
generic_graphalg.h
Aller à la documentation de ce fichier.
1
16/*****************************************************************************
17* *
18* ------------------------------ graphalg.h ------------------------------ *
19* *
20*****************************************************************************/
21
22#ifndef GENERIC_GRAPHALG_H
23#define GENERIC_GRAPHALG_H
24
25#include "generic_graph.h"
26#include "generic_list.h"
27
28/*****************************************************************************
29* *
30* Define a structure for vertices in depth-first search. *
31* *
32*****************************************************************************/
33
38
39/*****************************************************************************
40* *
41* Define a structure for vertices in breadth-first search. *
42* *
43*****************************************************************************/
44
49
50/*****************************************************************************
51* *
52* Define a structure for vertices in minimum spanning trees. *
53* *
54*****************************************************************************/
55
63
64/*****************************************************************************
65* *
66* Define a structure for vertices in shortest-path problems. *
67* *
68*****************************************************************************/
69
77
78/*****************************************************************************
79* *
80* --------------------------- Public Interface --------------------------- *
81* *
82*****************************************************************************/
83
84
86 generic_list_t *ordered);
87
88
90 generic_bfsvertex_t *start); /* or integer_list_t ?? */
91
93 const generic_mstvertex_t *start,
94 generic_list_t *span,
95 int (*compare)(const void *key1, const void *key2));
96
98 const generic_pathvertex_t *start,
99 generic_list_t *paths,
100 int (*match) (const void *key1, const void *key2));
101
102#endif
Structure de données de graphes orientés ou non, pondérés ou non, représentés par une liste d'adjacen...
enum vertexcolor_ vertexcolor_t
Type de données pour annoter les sommets lors d'un parcours de graphe.
struct generic_dfsvertex_ generic_dfsvertex_t
struct generic_pathvertex_ generic_pathvertex_t
int generic_shortest(generic_graph_t *graph, const generic_pathvertex_t *start, generic_list_t *paths, int(*match)(const void *key1, const void *key2))
struct generic_mstvertex_ generic_mstvertex_t
int generic_mst(generic_graph_t *graph, const generic_mstvertex_t *start, generic_list_t *span, int(*compare)(const void *key1, const void *key2))
int generic_dfs(generic_graph_t *graph, generic_list_t *ordered)
struct generic_bfsvertex_ generic_bfsvertex_t
int generic_bfs(generic_graph_t *graph, generic_bfsvertex_t *start)
Liste chainée contenant des valeurs de type void*
Definition generic_graphalg.h:45
void * data
Definition generic_graphalg.h:46
vertexcolor_t color
Definition generic_graphalg.h:47
Definition generic_graphalg.h:34
void * data
Definition generic_graphalg.h:35
vertexcolor_t color
Definition generic_graphalg.h:36
Type de données pour représenter un graphe comme une liste d'adjacence.
Definition generic_graph.h:51
Type de données pour représenter une liste chainée contenant des void*
Definition generic_list.h:49
Definition generic_graphalg.h:56
double key
Definition generic_graphalg.h:60
vertexcolor_t color
Definition generic_graphalg.h:59
double weight
Definition generic_graphalg.h:58
struct generic_mstvertex_ * parent
Definition generic_graphalg.h:61
void * data
Definition generic_graphalg.h:57
Definition generic_graphalg.h:70
double weight
Definition generic_graphalg.h:72
vertexcolor_t color
Definition generic_graphalg.h:73
struct generic_pathvertex_ * parent
Definition generic_graphalg.h:75
double d
Definition generic_graphalg.h:74
void * data
Definition generic_graphalg.h:71