map的使用

news/2024/7/7 19:09:08

map,我们一般称为字典或是映射,它提供了一对一的映射关系
使用场景 : map用于查找问题中某个元素出现的次数,比如问‘a’这个元素在数组中出现了多少次。这个只是最基本的应用场景,由于可以有任意的键值对的对应,map的应用远不止于此。还有一个unordered_map,复杂度较低。
头文件 : #include < map >
定义 : map< typename,typename > ma ,这里的typename可以是任何一种的数据类型
使用
c++中map的初始值自动为0,网上有各种各样的花式操作,我这里只记录最简单,最常用的操作

	ma.clear();  //清除map中的所有元素
	ma[5]=1;     //让5对应的值设为1,注意复杂度是log(n)
	ma[6]++;     //让6对应的值加1,log(n)
	ma.erase(6); //把6这个键从映射中删去,log(n)
	ma.find(6);   //查找6在map是否存在,如果不存在返回ma.end();log(n)
	map的遍历
	map<int,int> ma;
	map<int,int>::iterator it;
	for (it = ma.begin(); it != ma.end(); it++)
	{
		cout << it->first << ' ' << it->second << '\n';    //迭代器是一个二元对
	}

http://www.niftyadmin.cn/n/1037390.html

相关文章

ConcurrentHashMap-put

ConcurrentHashMap-put 推荐先读&#xff1a;ConcurrentHashMap属性解释 putVal主流程 initTable初始化table分支流程 helpTransfer帮助扩容分支流程 putVal主流程锁住桶后&#xff0c;链表插入/更新 putVal主流程锁住桶后&#xff0c;红黑树插入/更新 putVal主流程ad…

java变量使用,基础类型使用

先来了解java的基础比较常用的几种基础数据类型 int 整数类型 如 10 20 30 String 字符串类型 如 “你好” double 小数点类型 如 99.99 boolean 只有两个值 true 或 false true代表真 false代表假 定义变量的方法 为 类型 变量名 值 例如 int min 13; 这里我们定义了 一个…

排列问题

回溯法首先能处理一种排列问题&#xff0c;即全排列 题目 给定一个没有重复数字的序列&#xff0c;返回其所有可能的全排列。 示例: 输入: 3 1 2 3 输出: 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 有一个递归公式&#xff1a;perm(nums[0…n-1]) {取出一个数字} perm(nums[0……

缓存双写一致性

缓存双写一致性对于读&#xff1a;先读缓存&#xff0c;缓存没有&#xff0c;再读ku&#xff0c;回写缓存&#xff0c;这种没啥说的。对于写&#xff1a;先写库&#xff0c;再删除缓存&#xff0c;本文主要基于这种来探讨一下这样处理有什么问题&#xff1f; 如下图所示&#…

uni-app复选框checkbox大小调整

写vue的朋友就会被经典的误导 这个用样式去调显然解决不了问题 需要transform: scale() 个人建议 0.7大小比较合适 参考代码如下 <checkboxstyle"transform: scale(0.7)":checked"item.isChecked":value"item.isChecked"class"more&quo…

组合问题

回溯法能解决的另一个重要的问题就是组合问题 题目 给定两个整数 n 和 k&#xff0c;返回 1 … n 中所有可能的 k 个数的组合。 示例: 输入: n 4, k 2 输出: 2 4 3 4 2 3 1 2 1 3 1 4 #include <iostream> #include <vector> using namespace std; int n,k; /…

uni-app 修改复选框checkbox选中后背景和字体颜色

用几行css代码就能搞定 不过一定要写在跟节点 App.vue文件中 否则无效 uni-checkbox .uni-checkbox-input {border-radius: 50%;border: 1rpx solid rgb(149, 149, 151); }uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked {border: 1rpx solid rgb(33, 177, 255…

前端精灵图使用

所谓的精灵图 确实就是把许多个图片合成一个图片 例如这个 精灵图的意义在于性能优化 体现在请求次数 和项目大小上 首先 例如 你需要一个文件和一个文件的图片 那你的页面就会发两个 img的请求 但我这个精灵图显然只需要一次 其次 我可以用着一个图片做到很多 图片的使用 节省…