11-1 使用关联容器

image-20220227180134452

11.1.0 关联容器的类型

关联容器和顺序容器一样,都是模板类型,需要额外参数来指定类型

image-20220224150151773

image-20220224193251730

  • multi表示允许重复关键字

  • unordered表示关键字无序,内部是hash实现

  • map:存储“键-值”对,也叫关联数组

    set:任何关键字只能出现一次

11.1.1 使用map

//打印每个单词在输入中出现的次数
map<string, size_t> word_count; //string到size_t的空map
string word;
while(cin>>word)
    ++word_count[word];  //提取word的计数器并+1
	//没有word时会自动创建并将值定为
for(const auto &w : word_count){
    cout<<w.first<<" : "<<w.second<<endl;
}

从map的元素时pair,

  • pair也是模板类型

  • pair.first得到map的“键”

    pair.second得到map的“值”

11.1.2 使用set

上一个示例程序的一个合理扩展是:忽略常见单词,如"the"、"and"、"or"等。我们可以使用set保存想忽略的单词,只对不在集合中的单词统计出现次数:

image-20220224194050780

posted @   咪啪魔女  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
more_horiz
keyboard_arrow_up light_mode palette
选择主题
点击右上角即可分享
微信分享提示