day6 哈希表 242

242)有效字母异位词

比较简单 就简述 :1)学到数组当哈希表用;

2)在看到字符不一定一定只想到string数组也不一定要受限于转化为ASCII码值 和ascll值为0 的a取差值就可以转化为数值数组;

 349)两个数组的交集

理解代码语法有大问题

找了一下std::unordered_map:是一种容器 储存键-值的对 键唯一所以不会重复 但是也无序

find insert 都是他的实现函数;

if(num::nume2)是c++11新加的遍历方法

nums_set.find(num)!=nums_set.end()

这里理解花了一些时间 这里不等于最后元素 表明没有递归到最后元素就已经找到了表示找到了

 

202)快乐数

这里getnum()这个函数很常规没有啥好说的;

主函数在sum==1的情况放在外面 原来第一次是错误以为sum==1是作为一种特殊情况单独列出 但是其实是while里面出循环的必要条件

在这里判断是否重复和349问题的处理方法相同 ;

1)两数和 

这道题学到更多的是如何看情况运用不同的哈希表,这道题既需要找到和符合目标的值也需要知道他的下标 二者成对出现 采用key-value的map不需要键位有序所以不用mulitplemap

代码方面1)还是出现了这个find函数是否会等于表末来判断是否存在该元素

               2)map成对出现的声明必须有两个<int,int>

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值