11.1使用关联容器
来源:互联网 发布:js移除元素属性 编辑:程序博客网 时间:2024/06/06 12:22
map是STL的一个容器,和set一样,map也是一种关联式容器。它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,有助于我们处理一对一数据。map内部是自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的。
map和set容器的区别。
- 对于map中的每个节点存储的是一对信息,包括一个键和一个值,各个节点之间的键值不能重复。
- 对于set中的每个节点存储的是一个信息,只有一个键,但是每个键值也是唯一的。set表示的是集合的概念。
使用map
#include<iostream>#include<map>#include<string>using namespace std;int main(){ cout << "请输入字母:" << endl; //统计每个单词在输入中出现的次数 map<string, size_t> word_count;//string到size_t的空映射 string word; while (cin >> word) ++word_count[word];//这个单词的出现次数加1 for (const auto &w : word_count)//将map中的每个元素 //打印结果 cout << w.first << "出现了" << w.second << "次" << endl; return 0;}
使用set
#include<iostream>#include<set>#include<map>#include<string>using namespace std;int main(){ map<string, size_t> word_count; set<string> exclude = { "The", "But", "And", "Or", "An", "A", "the", "but", "and", "or", "an", "a" }; string word; while (cin>>word) //只统计不在exclude中的单词 if (exclude.find(word) == exclude.end()) ++word_count[word];//获取并递增word的计数器 for (const auto &w : word_count)//将set中的每个元素 //打印结果 cout << w.first << "出现了" << w.second << "次" << endl; return 0;}
0 0
- 11.1使用关联容器
- 关联容器使用举例
- 使用map关联容器
- 使用 库创建关联容器
- 使用 库创建关联容器
- 使用 库创建重复键关联容器
- 使用 库创建重复键关联容器
- 使用 库创建重复键关联容器
- 使用 MAP CLASS 库创建关联容器
- 使用 库创建重复键关联容器
- 第7章 使用关联容器
- 使用 <map> 库创建关联容器
- 【足迹C++primer】36、使用关联容器
- C++关联容器的使用实例
- 关联容器的细节以及使用要点
- C++中关联容器的使用
- 关联容器------map与pair的使用
- 关联容器
- Linux的Proc文件系统详解
- iterator和iterable
- MySQL存储过程详解
- 解决 Qt5 使用 OpenGL 函数未定义的错误
- HDU 1022 Train Problem I
- 11.1使用关联容器
- EL表达式简介
- POJ 3026(BFS+最小生成树)
- 安卓自定义MediaController的UI界面
- android中的坐标偏移分析与问题解决
- leetcode-Palindrome Number-9
- C#当窗体大小改变时,窗体中的控件大小也随之改变
- HDU 1021 Fibonacci Again
- 数据结构2.带控制信息的链表