summary of SET/MAP
来源:互联网 发布:电脑摄像头做网络监控 编辑:程序博客网 时间:2024/06/06 06:42
set 一些归纳
set能够在O(logN)添加,删除,检查一个元素是否存在。
O(1)统计不一样的元素的个数,也就是set里元素的个数。
注意set每种元素只存放一次,也就是说s.insert(1)后,再s.insert(1)将不改变set的内容。
写法:
头文件 “set”
”algorithm“
set <int> s;//可以是char,string,pair等等,要求可以比较插入:s.insert(1); //插入元素,复杂度logn,插入的时候自动排序,把最小的放在第一位s.begin()位set<int>::const_iterator it; // stl里的都是用迭代器,是一种加强版的数组指针it=s.begin();可以cout<<*it;s.begin()和s.end()返回2个迭代器,注意end是第一个空的迭代器,其中并没有元素,而begin里是最小的元素。rase(1); 删除一个元素,参数可以是要被删掉的值。也可以是iterator position,或者范围删除(iterator first, iterator last)eg: s.erase(s.begin());s.erase(s.begin(),s.end()); 此时s.end()不会被删除统计个数:s.size();返回set内元素个数,能保证不重复查找:s.find(1); 参数是要被查找的元素,返回值: 如果查找成功返回该元素的迭代器,没有该元素返回s.end()。另一个函数s.count(1); 同find,返回值不同。 查找成功返回1,否则返回0。其他一些会用到的函数:s.clear(); 重置s.upper_bound(x); 返回val大于x的迭代器,如果没有就返回ends.lower_bound(x); 返回val大于等于x的迭代器,如果没有就返回end
MAP:
数据结构和set相同,set是储存key值,而map则是储存pair
map添加数据:
map
map多了一个[]的功能。 但是在使用[]的时候如果map中没有key则会自动创建一个新的key值。因而不能在const map中使用[]
map查找:
和set相同,m.find(key) 返回一个typeof(m.begin())类型的迭代器,没找到的话返回m.end()。
map的迭代器,是指向pair的,所以若果it为迭代器,it->first是key值,it->second是value。
“`
0 0
- summary of SET/MAP
- summary of dynamic set
- JDK9新API:List.of();Map.of();Set.of();
- vector,list,deque,set,map of STL
- vector,list,deque,set,map of STL
- vector,list,deque,set,map of STL
- vector,list,deque,set,map of STL
- vector,list,deque,set,map of STL
- set、map、for-of和迭代器
- Summary of this part
- Summary of keyword synchronized
- SUMMARY OF JANE EYRE
- SUMMARY OF CREATIONAL PATTERNS
- SUMMARY OF STRUCTURAL PATTERNS
- Summary of Emacs Commands
- Simple summary of EJB
- Summary of Operators
- Summary of Variables
- CentOS中vsftp安装与配置
- codevs合唱队形 动态规划求最长递增子序列
- JAVA - Sql解析工具jsqlparser简单使用
- spket插件安装并设置JQuery自动提示
- sql查询语句
- summary of SET/MAP
- T-SQL:提取第一次出现的数字组合
- 【Unity3d】学习笔记(8)
- Nodejs express之参数接收
- java 存储方式详解及示例
- hdu 5207 Greatest Greatest Common Divisor
- 淘宝小号转让分享淘宝知识给大家,学到就是赚到淘宝淘宝小号转让分享淘宝知识给大家,学到就是赚到
- Android API下载与使用
- Rectangle 0-1背包