leetcode383-赎金信

leetcode 383

思路

本题和有效字母异位词很相似,可以查看位的博文:https://blog.csdn.net/weixin_45799371/article/details/145261075?spm=1001.2014.3001.5501

首先也通过哈希map来进行存储,由于magazine中的内容是要完全覆盖ransomNote的,所以我们首先要存储的是magazine的每个字母,然后遍历ransomNote,每次匹配上就让值-1,如果不存在或者magazine的值不够用的时候,这个数值就会变成负数,那么就说明无法完全覆盖,return false;

实现

js 复制代码
var canConstruct = function (ransomNote, magazine) {
    const map = new Map();
    for (let i = 0; i < magazine.length; i++) {
        const item = magazine[i]
        map.set(item, (map.get(item) || 0) + 1)
    }
    for (let i = 0; i < ransomNote.length; i++) {
        const item = ransomNote[i];
        map.set(item, (map.get(item) || 0) - 1);
        if(map.get(item) < 0){
            return false;
        }
    }
    return true;
};
相关推荐
liulilittle11 小时前
C++ 并发双阶段队列设计原理与实现
linux·开发语言·c++·windows·算法·线程·并发
白狐_79811 小时前
【项目实战】我用一个 HTML 文件写了一个“CET-6 单词斩”
前端·算法·html
Jasmine_llq11 小时前
《P3811 【模板】模意义下的乘法逆元》
数据结构·算法·线性求逆元算法·递推求模逆元
尋有緣11 小时前
力扣2292-连续两年有3个及以上的订单产品
leetcode·oracle·数据库开发
虹科网络安全11 小时前
艾体宝干货 | Redis Java 开发系列#2 数据结构
java·数据结构·redis
Jacob程序员11 小时前
欧几里得距离算法-相似度
开发语言·python·算法
ffcf12 小时前
消息中间件6:Redis副本数变为0和删除PVC的区别
算法·贪心算法
CoderYanger12 小时前
动态规划算法-斐波那契数列模型:2.三步问题
开发语言·算法·leetcode·面试·职场和发展·动态规划·1024程序员节
sin_hielo12 小时前
leetcode 2211
数据结构·算法·leetcode
Queenie_Charlie12 小时前
和为k的连续区间
数据结构·c++·map