当前位置:网站首页>力扣383-赎金信——哈希映射数组法
力扣383-赎金信——哈希映射数组法
2022-08-09 18:54:00 【张怼怼√】
题目描述
给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。
如果可以,返回 true ;否则返回 false 。
magazine 中的每个字符只能在 ransomNote 中使用一次。
求解思路
首先我们需要明白一点:magazine有可能比randomNote长,且包含的字母多;
所以先将这两个字符串通过 toCharArray() 方法转为为字符数组;
创建一个长度为26的字符映射数组 arr ,保存每个字母在字符数组中出现的次数;
首先需要遍历比较长的数组magazine,将每个元素出现次数保存至 arr 中;
其次,遍历 randomNate,将字母的出现次数在 arr 中减掉;
最后遍历 arr 如果有 arr[ i ] 有小于 0 的 ,说明 randomNote 中存在 magazine 中没有的字母。
输入输出示例

代码
class Solution {
public boolean canConstruct(String ransomNote, String magazine) {
char[] ran = ransomNote.toCharArray();
char[] mag = magazine.toCharArray();
int[] arr = new int[26];
for(char i : mag){
arr[i - 'a'] += 1;
}
for(char i : ran){
arr[i - 'a'] -= 1;
}
for(int i : arr){
if( i < 0) return false;
}
return true;
}
}边栏推荐
- IS31FL3737B 通用12×12 LED驱动器 I2C 42mA 40QFN
- Abbkine TraKine Pro 活细胞微管染色试剂盒重要特色
- 以技术创新加速国家“碳中和”建设进程,华为云创新中心助力欣冠精密实现云智控“气”
- 一图详解沃土云创计划高校教师参与全流程
- Samsung's flagship discount is 1,800, Apple's discount is over 1,000, and the domestic flagship is only reduced by 500 to send beggars
- shell脚本编写 hash方法,shell中字符到ascii码或数字的转换
- [] free column Android run Android, her - as command of safety
- 解决执行Command报错executable file not found in $PATH
- 移动端,PC端,微信等常用平台和浏览器判断
- [免费专栏] Android安全之GDB动态调试APP
猜你喜欢
![[] free column Android run Android, her - as command of safety](/img/d5/771802eb57f24c1cf88657f5c5a724.png)
[] free column Android run Android, her - as command of safety

为什么数字钱包需要引入小程序生态

Leetcode 739.每日温度 单调栈

Samsung's flagship discount is 1,800, Apple's discount is over 1,000, and the domestic flagship is only reduced by 500 to send beggars

新起之秀 DPU,正在掀起数据中心变革!

使用Mock技术模拟数据

优秀的 Verilog/FPGA开源项目介绍(三十一)- OFDM

Open Source Summer | List Details Display Based on Ruoyi Architecture

数据分散情况的统计图-盒须图

win10配置CenterNet环境
随机推荐
[免费专栏] Android安全之Android应用的汉化功能(修改so中的字符串内容)
漏洞复现-redis未授权getshell
安装多版本php(php5.6,php7.2)
听音识情绪 | 程序员手把手教你搭建神经网络,更快get女朋友情绪,求生欲max!
AttributeError: module ‘click‘ has no attribute ‘get_os_args‘
39. 组合总和 && 40. 组合总和2 && 216. 组合总和3
阿里云架构师耗时几个月编写这份MySQL高可用和性能优化技术宝典
基于SSM实现手机销售商城系统
Laravel之队列「建议收藏」
看完这波 Android 面试题;助你斩获心中 offer
[免费专栏] Android安全之Xposed插件开发【从零手把手带】教程
WPF 实现带蒙版的 MessageBox 消息提示框
一图详解沃土云创计划高校教师参与全流程
How to suppress alarm storms?
ClickHouse一种高性能分布式join查询模型(Colocate Join)
华为云创新中心助力启泰智能 补齐中小模具企业数字化能力短板
移动端,PC端,微信等常用平台和浏览器判断
超多AI开发者等你来玩转,一起燃动昇腾AI创享日南京站!
Bi Sheng Compiler Optimization: Lazy Code Motion
[Free Column] Android Fragment Injection for Android Security