87 return (
head ==
nullptr);
90 inline bool find(
const Data &data)
const
95 void push(
const Data &data)
110 assert(
head !=
nullptr &&
"list is empty");
119 Data data = head_node->
data;
153 assert(
data_list.size() ==
data_set.size() &&
"list and set must be the same size!");
157 inline bool find(
const Data &data)
const
165 inline bool push(
const Data &data)
182 assert(!
empty() &&
"work list is empty");
192 assert(!
empty() &&
"work list is empty");
202 assert(!
empty() &&
"work list is empty");
245 assert(
data_list.size() ==
data_set.size() &&
"list and set must be the same size!");
249 inline bool find(
const Data &data)
const
257 inline bool push(
const Data &data)
274 assert(!
empty() &&
"work list is empty");
286 assert(!
empty() &&
"work list is empty");
296 assert(!
empty() &&
"work list is empty");
bool push(const Data &data)
DataDeque data_list
work list using std::vector.
std::deque< Data > DataDeque
DataSet data_set
store all data in the work list.
bool find(const Data &data) const
std::vector< Data > DataVector
DataSet data_set
store all data in the work list.
bool find(const Data &data) const
DataVector data_list
work list using std::vector.
bool push(const Data &data)
bool find(const Data &data) const
void push(const Data &data)
std::unordered_set< Key, Hash, KeyEqual, Allocator > Set