unordered_multiset:与unordered_set类似,但允许存储重复元素。 unordered_map:一个键值对容器,键唯一,但不保证键的顺序,底层实现为哈希表。 unordered_multimap:与unordered_map类似,但允许键重复。 容器适配器: stack:一个后进先出(LIFO)的容器适配器,通常基于deque或vector实现。 queue:一个先进先出(FIFO)...
3、无序容器(Unorderd(associative) container),这是一种无序集合(unordered collection),其内每个元素的位置都无关紧要,唯一重要的是某特定的元素是否位于此集合内。 6.2.1 序列式容器(Sequence Container) Vector:将元素置于一个dynamic array中管理。它允许随机访问,也就是说,你可以利用索引直接访问任何一个元素。
#include <vector> using namespace std; int main() { int n; cin >> n; // 第二行序列中数字的个数 vector<int> nums(n); for (int i = 0; i < n; i++) { cin >> nums[i]; // 序列中的数字 } unordered_set<int> unique_nums; // 用于存储不重复的数字 // 遍历序列,保留第一...
(1)vector:可变数组大小。支持快速随机访问。在尾部之外的位置插入或删除元素可能很慢。 (2)deque:双端队列。支持快速随机访问。在头尾插入或删除碎度很快。 (3)list:双向链表。只支持双向顺序访问。在list的任何位置进行插入或删除操作速度都很快。 (4)set/multiset:只有键值,可以把set当做集合使用。multiset可以存...
栈由编译器自动管理。栈有两种分配方式:静态分配和动态分配。静态分配由编译器完成,比如局部变量的分配。动态分配由alloca()函数进行分配,但是栈的动态分配和堆是不同的,它的动态分配是由编译器进行释放,无须手工控制。 (2)产生碎片不同 对堆来说,频繁的new/delete或者malloc/free势必会造成内存空间的不连续,造成...
class Solution {public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {unordered_set s1(nums1.begin(),nums1.end()); // 去重unordered_set s2(nums2.begin(),nums2.end());vector<int> retV;if(s1.size() <= s2.size()){for(const auto& e : s1){if(s2.find(e...
class Solution {public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {unordered_set s1(nums1.begin(),nums1.end()); // 去重unordered_set s2(nums2.begin(),nums2.end());vector<int> retV;if(s1.size() <= s2.size()){for(const auto& e : s1){if(s2.find(e...
vector(数组) vector是封装动态数组的顺序容器。 成员函数: at():所需元素值的引用。 front():访问第一个元素(返回引用)。 back():访问最后一个元素(返回引用)。 beign():返回指向容器第一个元素的迭代器。 end():返回指向容器末尾段的迭代器。 empty():检查容器是否为空。 size():返回容器中的元素数。
所有原始指针都更改为 std::vector我们使用 std::unordered_set 取代原自定义的哈希表我们使用 std::sort 取代原自定义的排序例程下表是我们得到的结果:compiler/stl debug compile release compile debug run release run gcc 520 ms 646 ms 2273 ms 572 ms clang 400 ms 684 ms 2356 ms 566 ms clang libc...
Vector Vector常用函数 Vector的遍历 queue stack deque set map unordered_set unordered_map pair 位运算 reverse unique random_shuffle sort lower_bound/upper_bound 二分 习题八 数字在排序数组中出现的次数 0到n-1中缺失的数字 调整数组顺序使奇数位于偶数前面 ...