STL容器之字典排序
来源:互联网 发布:行知学园保证班 编辑:程序博客网 时间:2024/06/03 16:01
STL简单用法
在 STL9中对vector 的习惯用法完全不同。我们不是定义一个已知大小的 vector,而是定义一个空 vector
vector< string > v;
我们向 vector 中插入元素,而不再是索引元素,以及向元素赋值,例如 push_back()操作,就是在 vector 的后面插入一个元素,下面的 while 循环从标准输入读入一个字符串序列并每次将一个字符串插入到 vector 中
string s;
vector<string> v;
while(cin>>s)
{
if(s=="0")
break;
v.push_back(s);//对vector容器初始化赋值(可以使用push_back在容器尾端加入元素),如果我们要对vector容器遍历的话,可以常用数组或者迭代器的方式.
}
迭代访问元素典型的做法是使用 vector 操作集中的begin()和 end()所返回的迭代器 iterator
vector<string>::iterator it;//使用vector容器提供的iterator类型,定义一个迭代器变量,
for(it=v.begin();it!=v.end();++it)
cout<<*it<<" ";
iterator 是标准库中的类,它具有指针的功能
*it;
对迭代器解引用,并访问其指向的实际对象
++it;
向前移动迭代器 it 使其指向下一个元素
输入一组单词(区分大小写),输出这些单词的字典排序
注:1.可直接利用vector容器
#include <iostream>#include <vector>using namespace std;int main(){string s;vector<string> v;while(cin>>s){if(s=="0")break;v.push_back(s);//对vector容器初始化赋值(可以使用push_back在容器尾端加入元素),如果我们要对vector容器遍历的话,可以常用数组或者迭代器的方式.}sort(v.begin(),v.end());vector<string>::iterator it;//使用vector容器提供的iterator类型,定义一个迭代器变量,for(it=v.begin();it!=v.end();++it)cout<<*it<<" ";cout<<endl;return 0;}/*aad fr ce kt ac pi 0*/
2.可用set/multiset
#include <iostream>#include <set>using namespace std;int main(){string s;multiset<string> sset;while(cin>>s){if(s=="0")break;sset.insert(s);}multiset<string>::iterator it;for(it=sset.begin();it!=sset.end();++it)cout<<*it<<" ";cout<<endl;return 0; }
0 0
- STL容器之字典排序
- stl容器排序
- STL 容器的排序
- STL容器之顺序容器
- STL容器之关联容器
- STL容器之串行容器
- STL容器之关联容器
- 【STL】STL容器之vector
- 【STL】STL容器之map
- STL之顺序容器
- STL 之 容器
- STL容器之vector
- STL容器之list
- STL容器之stack
- STL容器之deque
- STL容器之map
- STL容器之set
- STL容器之 bitset
- 结构型模式之一:适配器模式
- 翻译---express 4.x版本官网的app.set()的属性和使用方法
- 国内免费CMS系统
- NLP+语义分析(四)︱中文语义分析研究现状(CIPS2016、角色标注、篇章分析)
- HttpClient发送请求时动态替换目标ip
- STL容器之字典排序
- 打印菱形-->输入需要打印的行数【菱形的上半三角形行数】
- Hadoop Hive sql语法详解
- Android使用HttpUtils框架首页检查更新
- java 运行时异常和检查异常
- leetcode 1 TwoSum
- Js 键盘记录实现(兼容FireFox和IE)
- 数据库
- Java多线程系列-Future