当前位置: 首页 > news >正文

STL之map

C++STL之map


1.介绍

map是映射的意思,即每个x对应一个y,我们这里说成key和value

举例子说明:运动->篮球 (运动是key,篮球是value)用电脑->写代码 (用电脑是key,写代码是value)

//头文件
#include<map>
#include<bits/stdc++.h>//万能头文件也可
//初始化
map<string,int> mp//第一个是key,第二个是value
//注意map会自动按照键的大小从小到大排序

2.函数

代码含义
mp.begin()map第一个元素的地址
mp.end()map最后一个元素的下一个的地址
mp.size()映射的对数
mp.count(key)key在map唯一,查看元素是否存在
mp.empty()是否为空
mp.insert()成对插入

3.访问

//迭代器访问
for(map<string,int>::iterator it=mp.begin();it!=mp.end();it++){cout<<it->first<<" "<<it->second<<endl;
}
//智能指针访问
for(auto i:mp){cout<<it->first<<" "<<it->second<<endl;//其他迭代器的也可以用智能指针auto访问
}

4.应用

#include<bits/stdc++.h>
using namespace std;
int main(){map<char,int> mp;string str;getline(cin,str);for(int i=0;i<str.size();i++){if(isalpha(str[i])){str[i]=toupper(str[i]);}else continue;mp[str[i]]++;}for(auto it=mp.begin();it!=mp.end();it++){cout<<it->first<<":"<<it->second<<endl;}return 0;
}

欢迎批评指正!

http://www.lryc.cn/news/336490.html

相关文章:

  • 闲谈2024(一)
  • SQL注入利用 学习- 布尔盲注
  • 前端项目部署教程——有域名有证书
  • 《看漫画学C++》第12章 可大可小的“容器”——向量
  • OpenAI推出GPTBot网络爬虫:提升AI模型同时引发道德法律争议
  • Claude使用教程
  • 【经典算法】LeetCode25:K 个一组翻转链表(Java/C/Python3,Hard)
  • 6.11物联网RK3399项目开发实录-驱动开发之定时器的使用(wulianjishu666)
  • 算法训练营第二十三天(二叉树完结)
  • mysql主从复制Slave_SQL_Running: No
  • 【SpringBoot】SpringBoot项目快速搭建
  • Terraform 状态不同步处理
  • 4.2.k8s的pod-标签管理、镜像拉取策略、容器重启策略、资源限制、优雅终止
  • 能源党建后台项目总结
  • 股票高胜率的交易法则是什么?
  • C语言 | sizeof与strlen的区别(附笔试题)
  • AI自动绘画器介绍和应用场景
  • java二叉树前中后序遍历
  • 【LeetCode刷题笔记】LeetCode 1365.有多少小于当前数字的数字
  • 室内定位中文综述阅读
  • 微信小程序uniapp+vue电力巡线任务故障报修管理系统2q91t
  • springboot国际化多语言
  • set和map
  • Open CASCADE学习|求曲面的参数空间
  • 代码随想录阅读笔记-二叉树【总结】
  • 【SpringBoot整合系列】SpringBoot整合FastDFS(二)
  • L2-2 巴音布鲁克永远的土(二分+并查集)
  • Spring Cloud学习笔记:Eureka简介,Eureka简单样例
  • 【漏洞复现】WordPress Welcart 任意文件读取漏洞(CVE-2022-4140)
  • 快速排序:深入解析其原理、实现与性能特性