libin103 1.4
Bibliothèque de structures de données en C
Chargement...
Recherche...
Aucune correspondance
generic_set.h
Aller à la documentation de ce fichier.
1
6/*****************************************************************************
7* *
8* -------------------------------- set.h --------------------------------- *
9* *
10*****************************************************************************/
11
12#ifndef GENERIC_SET_H
13#define GENERIC_SET_H
14
15#include <stdlib.h>
16#include <stdbool.h>
17
18#include "generic_list.h"
19
20/*****************************************************************************
21* *
22* Implement sets as linked lists. *
23* *
24*****************************************************************************/
25
34
35/*****************************************************************************
36* *
37* --------------------------- Public Interface --------------------------- *
38* *
39*****************************************************************************/
40
58 int (*compare)(const void *key1, const void *key2),
59 void* (*build) (const void *data),
60 void (*destroy)(void *data));
61
71
84 const void *data);
85
97 void **data);
98
111 generic_set_t *set1,
112 generic_set_t *set2);
113
126 generic_set_t *set1,
127 generic_set_t *set2);
128
142 generic_set_t *set1,
143 generic_set_t *set2);
144
155 const void *data);
156
169 generic_set_t *set2);
170
183 generic_set_t *set2);
184
197
198#endif
Liste chainée contenant des valeurs de type void*
bool generic_set_is_member(generic_set_t *set, const void *data)
Fonction testant l'appartenance d'une valeur à un ensemble.
int generic_set_remove(generic_set_t *set, void **data)
Supprimer un élément de type void* dans l'ensemble.
generic_list_t generic_set_t
Type de données pour représenter un ensemble générique contenant des valeurs de type void*
Definition generic_set.h:33
int generic_set_union(generic_set_t *setu, generic_set_t *set1, generic_set_t *set2)
Union de deux ensembles.
int generic_set_intersection(generic_set_t *seti, generic_set_t *set1, generic_set_t *set2)
Intersection de deux ensembles.
void generic_set_destroy(generic_set_t *set)
Destruction d'un ensemble.
void generic_set_init(generic_set_t *set, int(*compare)(const void *key1, const void *key2), void *(*build)(const void *data), void(*destroy)(void *data))
Initialisation d'un nouvel ensemble générique contenant des valeurs de type void*
bool generic_set_is_subset(generic_set_t *set1, generic_set_t *set2)
Fonction testant si un ensemble est sous-ensemble d'un autre.
int generic_set_size(generic_set_t *set)
Accesseur sur la taille d'un ensemble.
bool generic_set_is_equal(generic_set_t *set1, generic_set_t *set2)
Fonction testant si un ensemble est égale à un autre.
int generic_set_insert(generic_set_t *set, const void *data)
Ajouter un élément de type void* dans l'ensemble.
int generic_set_difference(generic_set_t *setd, generic_set_t *set1, generic_set_t *set2)
Différence de deux ensembles.
Type de données pour représenter une liste chainée contenant des void*
Definition generic_list.h:49