哈希表
map
map是 C++ 标准库中的一个关联容器,用于存储键值对,键是唯一的,且按键的升序排列。
m[key] = value:将键key对应的值设置为value。m.insert({key, value}):将键值对{key, value}插入到map中。m.erase(key):从map中删除键为key的元素。m.count(key):返回map中键为key的元素个数。m.find(key):返回指向map中键为key的元素的迭代器,如果key不存在则返回m.end()。m.lower_bound(key):返回指向map中第一个不小于key的元素的迭代器。m.upper_bound(key):返回指向map中第一个大于key的元素的迭代器。
unordered_map
unordered_map 是 C++ 标准库中的一个关联容器,用于存储键值对,键是唯一的。
umap[key] = value:将键key对应的值设置为value。umap.insert({key, value}):将键值对{key, value}插入到unordered_map中。umap.erase(key):从unordered_map中删除键为key的元素。umap.count(key):返回unordered_map中键为key的元素个数。umap.find(key):返回指向unordered_map中键为key的元素的迭代器,如果key不存在则返回umap.end()。umap.size():返回unordered_map中元素的个数。
set
set 是 C++ 标准库中的一个关联容器,用于存储唯一的元素。
|
|
nums.insert(x):将元素 x 插入到集合 nums 中。nums.erase(x):从集合 nums 中删除元素 x。nums.count(x):返回集合 nums 中元素 x 的个数。nums.find(x):返回指向集合 nums 中元素 x 的迭代器,如果 x 不存在则返回nums.end()。nums.lower_bound(x):返回指向集合 nums 中第一个不小于 x 的元素的迭代器。
emplace_back
emplace_back 是 C++ 标准库中 std::vector、std::deque、std::list 等容器的一个成员函数,用于在容器的末尾直接构造一个元素,而不是先创建一个临时对象再插入。这样可以避免不必要的拷贝或移动操作,提高效率。
queue
queue 是 C++ 标准库中的一个容器适配器,用于实现先进先出(FIFO)的队列。
|
|
q.push(x):将元素 x 入队。q.pop():将队首元素出队。q.front():返回队首元素的引用。q.back():返回队尾元素的引用。q.empty():检查队列是否为空,返回布尔值。q.size():返回队列中元素的个数。
priority_queue
priority_queue 是 C++ 标准库中的一个容器适配器,用于实现优先队列。
|
|
pq.push(x):将元素 x 入队,并按优先级排序。pq.pop():将优先级最高的元素出队。pq.top():返回优先级最高的元素的引用。pq.empty():检查优先队列是否为空,返回布尔值。pq.size():返回优先队列中元素的个数。
stack
stack 是 C++ 标准库中的一个容器适配器,用于实现后进先出(LIFO)的栈。
|
|
s.push(x):将元素 x 压入栈顶。s.pop():弹出栈顶元素。s.top():返回栈顶元素的引用。s.empty():检查栈是否为空,返回布尔值。s.size():返回栈中元素的个数。