当前位置: 首页 > news >正文

力扣383.赎金信

原题链接:383.赎金信

根据题意得出,需要判断第一个字符串内的字符有没有都在第二个字符串内出现(会有重复字符),并且范围限制在26个英文小写字母
此时可以考虑用一个数组map 作哈希法映射操作
先将遍历第一个字符串,并让每个字符减去’a’,此时数组map的下标范围就为0~25,再进行++即可
然后遍历第二个字符串,遍历时让第二个字符串中的每个字符减去’a’,再进行–,这时可以进行判断map[i]的值是不是大于0,然后返回false因为只有大于0的情况,才代表第一个字符串内存在第二个字符串中没有的字符
如果遍历完没有返回false,那么就代表第一个字符串内的字符都在第二个字符串内出现过,所以然会true

全代码:

class Solution {
public:bool canConstruct(string ransomNote, string magazine) {int map[26] = {0};for(int i = 0; i < ransomNote.size(); i++){//map[i] - 'a'代表的是当前英文字符减去 'a' ASCII码,范围是在0~25,不理解可以带入ASCII码实数进行计算map[ransomNote[i] - 'a']++;}for(int i = 0; i<magazine.size(); i++){map[magazine[i] - 'a']--;if(map[i] > 0){return false;}}return true;}
};
http://www.lryc.cn/news/213495.html

相关文章:

  • CORS的原理以及在Node.js中的使用
  • kotlin实现单例模式
  • 【Java】LinkedList 集合
  • MySQL-Galera-Cluster集群详细介绍
  • JavaScript从入门到精通系列第二十六篇:详解JavaScript中的Math对象
  • u盘直接拔出文件丢失怎么找回?u盘文件恢复办法分享!
  • rust学习-LinkedList
  • 搭上直播快车,文旅迎来了更大爆发期?
  • 【智能座舱系列】- 深度解密小米Hyper OS,华为HarmonyOS区别
  • kafka-consumer-groups.sh
  • 数据仓库-拉链表
  • 【Docker】一些可以直接用的Docker环境
  • Unity2D中瓦片地图的创建与绘制教程
  • 现代的简洁,诠释轻奢的精致!福州中宅装饰,福州装修
  • 运用ChatGPT辅助新手学习躺赢者PRO飞控二次开发示例(2023年10月28日)
  • 【Java】HashCode方法重写注意事项
  • 039-第三代软件开发-PDF阅读器
  • 计算机毕业设计选题推荐-跑腿平台微信小程序/安卓APP-项目实战
  • RocketMQ生产者消息发送出去了,消费者一直接收不到怎么办?(Rocket MQ订阅关系一致性)
  • 使用Golang开发硬件驱动
  • 设计模式(19)命令模式
  • QModelIndex 与QStandardItem相互转换
  • Linux - 进程地址空间
  • 系统架构设计师-第16章-嵌入式系统架构设计理论与实践-软考学习笔记
  • pod进阶
  • 系列四十七、Spring的事务传播行为案例演示(七)#NOT_SUPPORTED
  • 54.RabbitMQ快速实战以及核心概念详解
  • Qt TreeView 设置节点不可编辑
  • python django获取某个角色的某个数据和——例如:获取所有订单的应付金额总和
  • 如何在React项目中引用less