STL - 容器 - UnorderedSet(一)
一些简单操作
UnorderedSetTest.cpp
#include <unordered_set>
#include <numeric>
#include "../../Core/print.hpp"
#include "UnorderedSetTest.h" using namespace std; void UnorderedSetTest::simpleOperation()
{
// create and initialize unordered set
unordered_set<int> coll = { , , , , , , , , , }; // print elements
// - elements are in arbitrary order
PRINT_ELEMENTS(coll); // insert some additional elements
// - might cause rehashing and create different order
coll.insert({ -, , , -, , , , });
PRINT_ELEMENTS(coll); // remove element with specific value
coll.erase(); // insert sum of all existing values
coll.insert(accumulate(coll.begin(), coll.end(), ));
PRINT_ELEMENTS(coll); // check if value 19 is in the set
if (coll.find() != coll.end())
{
cout << "19 is available" << endl;
} // remove all negative values
unordered_set<int>::iterator pos;
for (pos = coll.begin(); pos != coll.end();)
{
if (*pos < ) {
pos = coll.erase(pos);
}
else {
++pos;
}
} PRINT_ELEMENTS(coll);
} void UnorderedSetTest::run()
{
printStart("simpleOperation()");
simpleOperation();
printEnd("simpleOperation()");
}
运行结果:
---------------- simpleOperation(): Run Start ----------------
17 1 2 19 11 3 77 13 5 7
17 1 2 19 11 3 77 13 5 7 -7 33 -11
17 1 2 19 11 3 77 13 5 7 -7 -11 137
19 is available
17 1 2 19 11 3 77 13 5 7 137
---------------- simpleOperation(): Run End ----------------
STL - 容器 - UnorderedSet(一)的更多相关文章
- STL容器
啦啦啦,今天听啦高年级学长讲的STL容器啦,发现有好多东西还是有必要记载的,毕竟学长是身经百战的,他在参加各种比赛的时候积累的经验可不是一天两天就能学来的,那个可是炒鸡有价值的啊,啊啊啊啊啊 #inc ...
- c++ stl容器set成员函数介绍及set集合插入,遍历等用法举例
c++ stl集合set介绍 c++ stl集合(Set)是一种包含已排序对象的关联容器.set/multiset会根据待定的排序准则,自动将元素排序.两者不同在于前者不允许元素重复,而后者允许. 1 ...
- STL容器删除元素的陷阱
今天看Scott Meyers大师的stl的用法,看到了我前段时间犯的一个错误,发现我写的代码和他提到错误代码几乎一模一样,有关stl容器删除元素的问题,错误的代码如下:std::vector< ...
- 【转】c++中Vector等STL容器的自定义排序
如果要自己定义STL容器的元素类最好满足STL容器对元素的要求 必须要求: 1.Copy构造函数 2.赋值=操作符 3.能够销毁对象的析构函数 另外: 1. ...
- GDB打印STL容器内容
GDB调试不能打印stl容器内容,下载此文件,将之保存为~/.gdbinit就可以使用打印命令了. 打印list用plist命令,打印vector用pvector,依此类推. (gdb) pvecto ...
- STL容器迭代器失效分析
连续内存序列容器(vector, string, deque) 对于连续内存序列STL容器,例如vector,string,deque,删除当前iterator会使得后面所有的iterator都失效, ...
- STL容器的适用情况
转自http://hsw625728.blog.163.com/blog/static/3957072820091116114655254/ ly; mso-default-props:yes; m ...
- STL容器的遍历删除
STL容器的遍历删除 今天在对截包程序的HashTable中加入计时机制时,碰到这个问题.对hash_map中的每个项加入时间后,用查询函数遍历hash_map,以删除掉那些在表存留时间比某个阈值长的 ...
- STL容器与配接器
STL容器包括顺序容器.关联容器.无序关联容器 STL配接器包括容器配接器.函数配接器 顺序容器: vector 行为类似于数组,但可以根据要求 ...
随机推荐
- 【失踪人口回归】第11届东北地区大学生程序设计竞赛——Time to make some change
对哈尔滨出租车和纸质题目和2148473647的吐槽都被毕克神牛在知乎上(https://www.zhihu.com/question/59782275/answer/169402588)pick/b ...
- python开发_tkinter_菜单的不同选项
python的tkinter模块中,菜单也可以由你自定义你的风格 下面是我做的demo 运行效果: ====================================== 代码部分: ===== ...
- Uva 5002 - The Queue DFS
On some special occasions Nadia’s company provide very special lunch for all employees of the compan ...
- Memcached (第一篇)
Memcached是“分布式”的内存对象缓存系统,那么不需要“分布”的.不需要共享的或者干脆规模小到只有一台服务器的应用,Memcached不会带来任何好处,相反还会拖慢系统效率,因为网络连接同样需要 ...
- yield的使用
参考: http://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/ http://blog.csdn.net/alvine0 ...
- Available Date 相关
Available Date 写错了怎么办? http://www.cocoachina.com/bbs/read.php?tid=7224&page=1现在好像不需要改那个availa ...
- 使用静态库的一些问题 -all_load
1.使用类目在我们的静态库中涉及到 类目 catagory的使用时,会崩溃:此时我们需要设置project的Info里面的Link Flag处,增加-all_load,这样会链接所以存在的symbol ...
- Python3.6学习笔记(四)
错误.调试和测试 程序运行中,可能会遇到BUG.用户输入异常数据以及其它环境的异常,这些都需要程序猿进行处理.Python提供了一套内置的异常处理机制,供程序猿使用,同时PDB提供了调试代码的功能,除 ...
- OpenCV学习(25) 直方图(2)
在OpenCV中,也可以对三通道的图像,比如BGR,HSV等计算直方图.方法和计算单通道图像直方图相似,下面的代码描述了如何计算一个BGR三通道图像的直方图,需要注意的是,因为是三通道,每个通道取值都 ...
- 我所遭遇过的游戏中间件--Kynapse
我所遭遇过的游戏中间件--Kynapse Autodesk Kynapse游戏中间件是一款面向游戏开发.非玩家控制角色实时模拟的领先的人工智能解决方案.Kynapse具有先进的路径查找功能,比如三维路 ...