关联容器 multimap
2016-01-24 22:43
260 查看
//multimap会自动按照键值为所有元素排序,将键值相同的元素放在一起 //能够对元素进行快速访问,因为它是树形结构。 #include<iostream> #include<string> #include<algorithm> #include<map> void output( std::pair<const int,std::string> &s){ std::cout<<" "<<s.first<<" "<<s.second<<std::endl; } typedef int KeyType; typedef std::pair<const KeyType,std::string>Pair; typedef std::multimap<KeyType,std::string>MapCode; int main(void){ using namespace std; MapCode codes; codes.insert(Pair(415,"墨西哥")); codes.insert(Pair(718,"布鲁克林")); codes.insert(Pair(510,"乌克兰")); codes.insert(Pair(718,"夏威夷群岛")); codes.insert(Pair(718,"冰岛")); codes.insert(Pair(415,"洛杉矶")); codes.insert(Pair(510,"加州")); cout<<"Number of cities with area code 415:"<<codes.count(415) <<endl; cout<<"Number of cities with area code 510:"<<codes.count(510) <<endl; cout<<"Number of cities with area code 718:"<<codes.count(718) <<endl; cout<<"Area Code of City:\n"; for_each(codes.begin(),codes.end(),output); //ostream_iterator<Pair,char> out(cout," "); //copy(codes.begin(),codes.end(),out); pair<MapCode::iterator,MapCode::iterator> range=codes.equal_range(718); cout<<"Cities with area code 718:\n"; MapCode::iterator it; for(it=range.first;it!=range.second;++it){ cout << (*it).second << endl; } return 0; }
相关文章推荐
- UIAlertController  VS  UIAlertView and UIActionSheet
- 利用jQuery.validate异步验证用户名是否存在
- [工作中的设计模式]策略模式stategy
- 1月22号 animation—1
- vsftp,samba,nfs区别和配置
- 函数适配器
- 关于使用Restlet的升级
- 操作系统学习笔记:分布式协调
- mac ssh会话复制
- 1月22号 KVC KVO
- Leetcode 52 N-Queens II 回溯搜索
- 操作系统学习笔记:分布式协调
- Log4j:log4j.properties 配置解析
- 名词解释之健康保险产品
- XCode4.3.3无证书无真机打包说明
- Linux学习
- Android笔记 - Binder之请求注册Service组件
- red hat 7.2安装libobasis5.0
- 常用html标签 —— 链接的颜色
- 【SQL server】 数据类型