如果map中包含若干个key为10的倍数,要删除key为10的倍数。

错误形式

#include <iostream>
#include <map>
#include <iterator>using namespace std;int main()
{map<int, int> m;for (int i = 0; i < 10; i++){m.insert(pair<int, int>(10 * i, i));}for (map<int, int>::iterator it = m.begin(); it != m.end(); it++){if (it->first % 10 == 0){m.erase(it); it--;}}return 0;
}

正确形式应该为

#include <iostream>
#include <map>
#include <iterator>using namespace std;int main()
{map<int, int> m;for (int i = 0; i < 10; i++){m.insert(pair<int, int>(10 * i, i));}for (map<int, int>::iterator it = m.begin(); it != m.end(); ){if (it->first % 10 == 0){m.erase(it++);}else it++;}return 0;
}

因为map是用红黑树结构来做的,当删除操作时,红黑树的结构会调整

map中的迭代删除操作注意问题相关推荐

  1. ArrayList中元素的删除操作

    ArrayList中元素的删除操作 在聊 ArrayList 的删除删除操作之前,先来说说它的遍历方法. 一个 list 的遍历方法主要有三种: Iterator 迭代器遍历 遍历下标 for 循环遍 ...

  2. elementui在table中使用el-popover删除操作

    elementui在table中使用el-popover删除操作 .vue <el-table-column label="操作" width="120" ...

  3. python中列表的删除操作

    增加: ceshi = ['a','b','c','d','e','f']ceshi.append('g') print(ceshi) #['a','b','c','d','e','f','g'],是 ...

  4. 【Python中字典的删除操作-del和clear】

    快速理解 del和clear的区别 dict0={'key1': 1, 'key2': 2} del dict0['key1'],表示删除键为key1的键值对: del dict0表示删除整个字典,删 ...

  5. 汇总pandas中dataframe的删除操作

    文章目录 数据集 去重 删除某行或某列 删除某行 删除某列 去空 数据集 去重 df.drop_duplicates(["height","weight"])# ...

  6. java中map删除指定元素_Map中根据条件删除元素

    今天在写程序过程中,需要根据判断条件删除一个Map中的相应数据,我自然而然想到可以通过调用Map中的remove(Object key)函数进行删除:代码如下: public Map processM ...

  7. Dart语言基础Map、List、Set操作合辑

    题记 -- 执剑天涯,从你的点滴积累开始,所及之处,必精益求精,即是折腾每一天. ** 你可能需要 CSDN 网易云课堂教程 掘金 EDU学院教程 知乎 Flutter系列文章 Flutter完全采用 ...

  8. java map移除_Java根据条件删除Map中元素

    今天在写程序过程中,需要根据判断条件删除一个Map中的相应数据,我自然而然想到可以通过调用Map中的remove(Object key)函数进行删除:代码如下: public Map processM ...

  9. 在ASP.net 中对GridView中数据的删除、编辑等操作:

    一.进行删除操作 1首先在vs里面新建一个网站,添加GridView 工具,在GridView1的属性里面把AutoGenerateDeleteButton的属性该为true, 2然后再给GridVi ...

最新文章

  1. mysql删除原则_MySQL数据库的增删选查
  2. AC自动机-洛谷3121 [USACO15FEB]审查(黄金)Censoring (Gold)
  3. Android解决java.lang.OutOfMemoryError: bitmap size exceeds VM budget(转)
  4. 案例4-1.6 树种统计 (25 分)_18行代码AC
  5. PIT,JUnit 5和Gradle –仅需额外的一行配置
  6. Oracle碎碎念~2
  7. java nio 连接数_Java NIO 基础一 NIO概念
  8. Windows7快捷键大全
  9. Python 爬虫 (三) - Socket 网络编程
  10. [转] 基于C#的波形显示控件的实现
  11. 洛谷 1315 观光公交——贪心
  12. android系统证书管理,抓包Android 7.0+将ca证书导入到系统(设置为系统证书)
  13. 安居客 Android 项目架构演进
  14. 【机器学习】 - 决策树(西瓜数据集)
  15. 服务评价器连接计算机后无法启动,四键评价器服务端+客户端(附驱动)
  16. js 数组entries迭代方法
  17. Tableau豆瓣电影数据项目实战练习2
  18. nacos和eruka的区别
  19. iOS10新特性及开发者要注意什么
  20. 蓝桥杯矩形切割python求解

热门文章

  1. modelsim do文件仿真
  2. php 两次post,ajax跨域往php程序post数据时,php程序总是执行两次的解决办法
  3. python编程可以做什么工作-Python学到什么程度才可以去找工作?掌握这4点足够了!...
  4. python数据类型-第三篇:Python基本数据类型
  5. 如何用python画数据图-用Python绘制地理图
  6. python 代码-你见过哪些令你瞠目结舌的 Python 代码技巧?
  7. python打开-Python中的打开文件对话框(转)
  8. 编程入门python语言是多大孩子学的-什么是少儿Python编程?这一篇就够啦!
  9. python教程第四版pdf下载-笨办法学python第四版
  10. python程序员工作怎样-12个Python程序员面试必备问题与答案(小结)