当前位置:网站首页>代码随想录笔记_哈希_383赎金信
代码随想录笔记_哈希_383赎金信
2022-08-02 03:14:00 【Erik_Won】
代码随想录笔记_哈希表
代码随想录二刷笔记记录
LC 383.赎金信
题目
给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。
如果可以,返回 true ;否则返回 false 。
magazine 中的每个字符只能在 ransomNote 中使用一次。
示例 1:
输入:ransomNote = “a”, magazine = “b”
输出:false
示例 2:
输入:ransomNote = “aa”, magazine = “ab”
输出:false
示例 3:
输入:ransomNote = “aa”, magazine = “aab”
输出:true
思路分析
step1: 声明一个长度为26的字典,记录magazine里字母出现的次数
step2: 用ransomNote去验证这个字典是否包含了ransomNote中的所有字母。
代码实现
完整代码实现
public boolean canConstruct(String ransomNote, String magazine) {
int[] cnt = new int[26];
char[] ca1 = ransomNote.toCharArray();
for (char c : ca1) {
cnt[c - 'a']++;
}
char[] ca2 = magazine.toCharArray();
for (char c : ca2) {
cnt[c-'a']--;
}
for (int i : cnt) {
if (i > 0){
return false;
}
}
return true;
}
边栏推荐
猜你喜欢
随机推荐
7-41 PAT排名汇总 (25 分)多样排序
centos安装mysql8
iVX低代码平台系列详解 -- 概述篇(二)
JSP WebSehll backdoor script
7-42 整型关键字的散列映射 (25 分)
知识体系树
为什么四个字节的float表示的范围比八个字节的long要广
黑马案例--实现 clock 时钟的web服务器
线性代数学习笔记1:何为线性代数
【LeetCode】206. Reverse linked list
2022.7.30 js笔记 运算符和流程控制符、循环
直击程序员面试现场:百度面试官都问了我些啥?
Good Key, Bad Key (思维,临项交换,经典方法)
第 304 场力扣周赛
Chapter 10 聚类
MySql中的like和in走不走索引
MySQL8.0.28 installation tutorial
Keil开发环境安装教程
(转帖)hashcode和equals的关系
MySQL8.0.28安装教程