5 #ifndef GPUGenie_inv_list_h 6 #define GPUGenie_inv_list_h 10 #include <unordered_map> 41 std::pair<int, int> _bound;
49 std::vector<std::vector<int> > _inv;
54 unsigned int shift_bits_subsequence;
130 invert_subsequence(
int *data,
unsigned int item_num,
unsigned int * index,
unsigned int row_num);
150 inv_list(std::vector<std::string>& vin);
159 inv_list(std::vector<std::string>* vin);
191 invert(std::vector<int>& vin);
199 invert(std::vector<int>* vin);
209 invert(std::vector<std::string>& vin);
219 invert(std::vector<std::string>* vin);
234 invert(std::vector<std::string>& vin,
int (*stoi)(std::string&));
249 invert(std::vector<std::string>* vin,
int (*stoi)(std::string&));
void invert_bijectMap(std::vector< std::vector< int > > &vin)
int size()
Return the number of instances.
This is the top-level namespace of the project.
void invert_subsequence(std::vector< std::vector< int >> &vin)
inv_list()
Create an empty inv_list.
std::unordered_map< int, int > _distinct
unsigned int _shift_bits_subsequence()
int max()
Return the max value of the inverted vector.
int value_range()
Return the number of different values in the attribute.
int min()
Return the min value of the inverted vector.
std::vector< int > * index(int value)
The indexes of the value.
This class manages one inverted list.
void invert(std::vector< int > &vin)
bool contains(int value)
Check whether the vaule is in the inv_list.
void invert_sequence(std::vector< std::vector< int >> &vin, int shift_bits)
This is used for sequence match.