-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbloomfilter.h
More file actions
24 lines (18 loc) · 788 Bytes
/
bloomfilter.h
File metadata and controls
24 lines (18 loc) · 788 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#ifndef BLOOMFILTER_H_INCLUDED
#define BLOOMFILTER_H_INCLUDED
#include <stdbool.h>
#include "hash.h"
typedef struct
{
int k; //numero di funzioni hash
int m; //numero di bit del filtro
int* hashSeeds; //seed delle k funzioni hash
bool* filter; //filtro
} BloomFilter;
BloomFilter createBloomFilter(int k,int m);
void freeBloomFilter(BloomFilter bloomFilter);
void bfInsertion(BloomFilter* bloomFilter, const char* elem, int elemLen);
void bfConstruction(BloomFilter* bloomFilter, const char** dataset, const int* datasetElemLen, int n);
bool bfSearch(BloomFilter bloomFilter, const char* elem, int elemLen);
int countDatasetMembership(BloomFilter bloomFilter, const char** dataset, const int* datasetElemLen, int n);
#endif // BLOOMFILTER_H_INCLUDED