hash操作

如果只需要存储元素(或者删除重复元素),无需其他信息,则使用集合,python和c++都是使用set。

在python中,add()和remove()方法分别进行添加和删除元素,对应的在c++中,使用insert()和erase()方法。判断是否存在某元素时,python代码是if x in set0,c++代码是if(set0.find(x) == set0.end())

如果在存储元素的同时,还存储其他信息,比如次数,python使用dict,c++使用map。元素key是唯一值,其他信息value是元素的某个属性,可以有重复值。部分比较如下表所示:

操作

python

c++

初始化

dict0 = {}

mapmap0;

添加元素

dict0[key]=value

map0[key]=value

删除元素

dict0.pop(key)

map0.erase(key)

判断元素是否存在

if key in dict0

if(map0.find(key) == map0.end())

遍历元素

for k, v in dict0.items()

map::iterator iter;for(iter = map0.begin(); iter != map0.end(); iter++) key=it->first, value=it->second;}

本文分享自微信公众号 - 木又AI帮(gh_eaa31cab4b91),作者:木又

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-04-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【leetcode刷题】T120-将有序数组转换为二叉搜索树

    https://leetcode-cn.com/problems/convert-sorted-array-to-binary-search-tree/

    木又AI帮
  • 【leetcode刷题】T95-查找和替换模式

    你有一个单词列表 words 和一个模式  pattern,你想知道 words 中的哪些单词与模式匹配。

    木又AI帮
  • 【leetcode刷题】20T27-旋转链表

    https://leetcode-cn.com/problems/rotate-list

    木又AI帮
  • Dell服务器常用管理命令总结

    Dell服务器常用管理命令总结 准备新版本的 MegaCli-8.07.14-1.noarch.rpm 会把程序安装在/opt下,可以自定义安装目录,例如: ...

    shaonbean
  • 生成模型压缩图片

    传统的图像和视频压缩算法要依赖手动调整的编码器/解码器对(多媒体数字信号编解码器,codec),缺乏适应性,对被压缩的数据也不可知。在这篇论文中,我们描述了生成...

    用户1908973
  • sublime3+python代码追踪函

    http://blog.csdn.net/M1mory/article/details/72582661

    用户2398817
  • 从零开始学 Web 之 Ajax(一)服务器相关概念

    服务器和客户端都是电脑,在硬件层面上没有明显的划分,配置很差的个人电脑任然可以作为服务器。

    Daotin
  • 腾讯企业邮箱登录入口

    第一步:打开腾讯企业邮登录页https://exmail.qq.com/login,选择帐号密码登录,点击忘记密码

    小小强
  • 那盆被骂了30天的植物终于死了:语言到底有多恐怖的能量?

    最近阿联酋的宜家进行了一个实验,这个实验先开始并不起眼,但实验的结果,却震惊了全世界...

    钱塘数据
  • 2015 Bossie评选:最佳开源大数据工具

    InfoWorld在分布式数据处理、流式数据分析、机器学习以及大规模数据分析领域精选出了2015年的开源工具获奖者,下面我们来简单介绍下这些获奖的技术工具。 1...

    CSDN技术头条

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动