linux下练习 c++ 容器set、multimset的特性
print.h
//print.h#include <iostream>using namespace std;#ifndef print_fun#define print_funtemplate<typename T>///显示序列数据void print(T b,T e,char c=' '){bool isExit=false;while (b!=e){cout<<*b++<<c;isExit=true;}if(isExit) cout<<endl;}template<typename K,typename V>ostream& operator<<(ostream& o,const pair<K,V>& p)//重载输出map类型元素{return o<<p.first<<':'<<p.second;}#endif
set.cpp
/*set特性元素就是key=value不允许重复*/#include<set>#include<iostream>using namespace std;#include<string>#include<fstream>
#include"print.h"int main(){set<string> ss;//定义容器string s;//ifstream fin("maillist.txt");if(!fin){return 1;}while(fin>>s) ss.insert(s);print(ss.begin(),ss.end());}
结果:
multiset.cpp
/*set特性元素就是key=value允许重复key*/#include<set>#include<iostream>using namespace std;#include<string>#include<fstream>#include<map>
#include"print.h"int main(){multiset<string> ms;string s;ifstream fin("maillist.txt");if(!fin){return 1;}while(fin>>s) ms.insert(s);print(ms.begin(),ms.end());multiset<string>::iterator ib=ms.begin(),ie;multimap<int,string> mis;while(ib!=ms.end()){mis.insert(make_pair(ms.count(*ib),*ib));//排好序的一段ib=ms.upper_bound(*ib);}print(mis.begin(),mis.end());return 0;}
maillist.txt
ppp1@qq.comppp2@qq.comppp3@qq.comppp2@qq.comppp2@qq.comppp1@qq.comppp1@qq.com
结果:
转载于:https://www.cnblogs.com/pukuimin/archive/2012/10/26/2988088.html
linux下练习 c++ 容器set、multimset的特性相关推荐
- Linux下的docker容器安装教程
Linux下的docker容器安装教程 一.初始环境配置 1.yum仓库配置 2.检查yum仓库 3.关闭防火墙和selinux 二.开启内核的流量转发 三.安装docker 1.配置docker相关 ...
- linux容器进程号,linux下docker启动容器,查看容器、进程、日志等命令
运行容器:docker run -it 镜像名 /bin/bash 退出容器:exit 或者 Ctrl+P+Q 查看所有容器:docker ps -a 查看运行的容器:docker ps 重启容器:d ...
- 如何在Deepin Linux下安装Docker容器经验分享
1.我们都知道的Docker:https://download.docker.com/ Index of / linux/ 2017-05-05 16:20 - mac/ 2017-06-08 16: ...
- linux下修改docker容器RabbitMQ端口映射(修改RabbitMQ默认端口)
1.xshell 执行以下命令获取docker容器ID docker ps -a 2.修改 /var/lib/docker/containers/{容器 ID+ 一些字符串}/hostconfig.j ...
- 【自学Docker容器二 ● Linux下Dokcer环境安装 】
Docker自学系列 第一篇 [自学Docker容器一 ● 基础知识 ] 第二篇 [自学Docker容器二 ● Linux下Dokcer环境安装 ] 第三篇 [自学Docker容器三 ● Docker ...
- Linux下Tomcat的安装配置
Linux下Tomcat的安装配置 一.下载安装对应的jdk,并配置Java环境. 官网下载地址: http://www.oracle.com/technetwork/java/javase/down ...
- 红帽企业版Linux成为Linux下的.NET Core的参考平台
微软和红帽声明将在红帽企业版Linux运行的.NET纳入官方支持.经两家公司透露,"红帽企业级Linux将成为Linux下的.NET Core主要参考操作系统". \\ 来自红帽资 ...
- Linux下安装和使用boost库
Linux下安装和使用boost库 2016-08-26 20:29:06 zhaomax 阅读数 349更多 分类专栏: C++ 用boost库中的serialization库.Boost库分为两个 ...
- 如何在Linux下安装Docker
如何在Linux下安装Docker Docker概念: Docker包括三个基本概念: l 镜像(Image) l 容器(Container) l 仓库(Repository) 理解了这三个概念 ...
最新文章
- docwizard c++程序文档自动生成工具_工具用的好,老师下班早!老师的高效办公利器都在这!...
- Kafka学习-复制
- 只导出项目需要的pip依赖包-方法的缺陷
- ld 指令c语言实现,C语言符号、指令表.doc
- JavaScript变量作用域如何像多个级别的政府一样
- MySQL工作中的实际用_总结工作中经常用到的mysql基础知识
- NT下如何彻底删除Oracle?
- mybatis中的$与#的区别
- 读书记录(持续更新...)
- matlab 音频处理、Python音频处理
- 奇葩属性:layout_weight 的解释及使用
- 面具更新自定义_面具Magisk如何从稳定版切换到测试版,面具版本切换教程
- 人只会看到他想看的,不想看的视而不见
- 数据库系统原理——概述
- Vue——组件化开发
- AutoUpdater 实现一个简易的自动升级工具
- 计算机插入的u盘文件打不开,U盘插入电脑显示盘符却打不开的解决方法
- 论文写作学习心得体会
- 有哪些好的编程习惯从一开始就值得坚持?
- a non-compliant version of Huawei Mobile Services SDK which contains code to download or install app