gft_set.h
Go to the documentation of this file.
1 
2 #ifndef _GFT_SET_H_
3 #define _GFT_SET_H_
4 
5 #include "gft_common.h"
6 #include "gft_bmap.h"
7 
8 namespace gft{
9  namespace Set{
10 
11  typedef struct _set {
12  int elem;
13  struct _set *next;
14  } Set;
15 
16 
17  Set *Create();
18  void Destroy(Set **S);
19  Set *Clone(Set *S);
20 
21  void Insert(Set **S, int elem);
22  int Remove(Set **S);
23  void RemoveElem(Set **S, int elem);
24  bool IsInSet(Set *S, int elem);
25  int MinimumValue(Set *S);
26  int MaximumValue(Set *S);
27  void Convert2DisjointSets(Set **S1,
28  Set **S2);
29  int GetNElems(Set *S);
30 
38  void Merge(Set **S, Set **T);
39 
40  } //end Set namespace
41 } //end gft namespace
42 
43 #endif
44 
void Destroy(Set **S)
Definition: gft_set.cpp:11
void Convert2DisjointSets(Set **S1, Set **S2)
Definition: gft_set.cpp:158
Set * Create()
Definition: gft_set.cpp:7
struct gft::Set::_set Set
void Merge(Set **S, Set **T)
Merge two sets.
Definition: gft_set.cpp:220
Header file for common definitions and function prototypes.
int MaximumValue(Set *S)
Definition: gft_set.cpp:144
void Insert(Set **S, int elem)
Definition: gft_set.cpp:64
Definition: gft_set.h:11
struct _set * next
Definition: gft_set.h:13
bool IsInSet(Set *S, int elem)
Definition: gft_set.cpp:116
int MinimumValue(Set *S)
Definition: gft_set.cpp:130
void RemoveElem(Set **S, int elem)
Definition: gft_set.cpp:99
int elem
Definition: gft_set.h:12
int Remove(Set **S)
Definition: gft_set.cpp:82
int GetNElems(Set *S)
Definition: gft_set.cpp:207
Set * Clone(Set *S)
Definition: gft_set.cpp:35