map映射到二维数组

今天做题,遇到一道比较有意思的题目,就是将map映射到一个二维动态数组中完成一个分组

这里的 mp 是一个关联容器(如 std::map<int, std::vector<int>> 或者 std::unordered_map<int, std::vector<int>>),其键是整数,值是一维整数向量。ans 是一个二维向量(std::vector<std::vector<int>>)。

具体分组过程

  1. 遍历关联容器:使用迭代器 it 从 mp 的起始位置开始,逐个访问 mp 中的元素,直到遍历完整个 mp
  2. 获取值并添加到结果容器:在每次迭代中,it->second 代表当前键所对应的值,也就是一个一维整数向量。通过 emplace_back 方法将这个一维向量直接添加到 ans 这个二维向量的末尾。
  3. 分组效果:由于 mp 中的每个键都对应一个一维向量,这样不断将这些一维向量添加到 ans 中,就相当于把 mp 里的值按照键的顺序依次分组存储到 ans 里。ans 的每个元素(也就是子向量)对应 mp 中一个键的值,实现了分组的效果。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值