1.1 vector(数组)封装动态数组的顺序容器。 1.2 queue(队列)是容器适配器,他是FIFO(先进先出)的数据结构。 1.3 deque(双端队列)是有下标顺序容器,它允许在其首尾两段快速插入和删除。 1.4 set(集合)集合基于红黑树实现,有自动排序的功能,并且不能存放重复的元素。 1.5 unordered_set(无序集合)基于哈希表实现,...
Vector常用函数 Vector的遍历 queue stack deque set map unordered_set unordered_map pair 位运算 reverse unique random_shuffle sort lower_bound/upper_bound 二分 习题八 数字在排序数组中出现的次数 0到n-1中缺失的数字 调整数组顺序使奇数位于偶数前面 ...
cout << "set1 and set2 have the same sorting criterion" << endl; else cout << "set1 and set2 have the different sorting criterion" << endl; } void fill(IntSet &set) { set.insert(4); set.insert(7); set.insert(5); set.insert(1); set.insert(6); set.insert(2); set.insert...
unordered_map / map: \ /* unordered_map / map 自定义排序 */ typedef pair<string,int> psi; unordered_map<string,int> ump; int cmp(psi p1,psi p2) { if(p1.second==p2.second) return p1.firstp2.second; } vector<psi> vec(ump.begin(),ump.end()); sort(vec.begin(),vec.end()...
C++ 标准始终禁止 const 元素(如 vector<const T> 或set<const T>)的容器。 Visual Studio 2013 及更早版本接受此类容器。 在当前版本中,此类容器无法编译。 std::allocator::deallocate 在Visual Studio 2013 和早期版本中,std::allocator::deallocate(p, n) 忽略了传入用于 n 的参数。 C++ 标准始终要求 n...
一、set和multiset基础 set和multiset会根据特定的排序准则,自动将元素进行排序。不同的是后者允许元素重复而前者不允许。 需要包含头文件: #include <set> set和multiset都是定义在std空间里的类模板: template<class_Kty, class_Pr = less<_Kty>,
vector(数组) vector是封装动态数组的顺序容器。 成员函数: at():所需元素值的引用。 front():访问第一个元素(返回引用)。 back():访问最后一个元素(返回引用)。 beign():返回指向容器第一个元素的迭代器。 end():返回指向容器末尾段的迭代器。 empty():检查容器是否为空。 size():返回容器中的元素数。
30、vector迭代器失效的情况 31、map与unordered_map对比 32、set与unordered_set对比 33、STL容器空间...
voidtest_other_string_api(){//单纯保存的是字符序列,使用 vector<char>vector<char>char_array;//字面量后缀, s 后缀,表示是一个 string 类型auto str="shixinzhang hahaha"s;auto not_raw_string="zhangshi \n xin hhha";//想直接输出各种转义符,使用 raw stringauto raw_string=R"(zhangshi \n xin...
unordered_set<int> unums(nums.begin(), nums.end()); // 去重 // 检测最大N个数与最小N个数不能有重叠 if(unums.size() < 2 * n) { illegal = true; } if(illegal) { cout << -1 << endl; return 0; } int maxsum = 0; // 对数字进行排序 vector<int> sortedNums(unums.begin...