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;
};
相关推荐
_饭团11 小时前
指针核心知识:5篇系统梳理2
c语言·笔记·学习·leetcode·面试·改行学it
罗湖老棍子11 小时前
Maximum Subarray Sum II最大连续区间和(CSES- P1644)
算法·滑动窗口·单调队列
小年糕是糕手11 小时前
【C++】string类(三)
开发语言·数据结构·c++·程序人生·算法
胖祥11 小时前
onnx之NodeComputeInfo
开发语言·c++·算法
无限空间之王11 小时前
我让三个 AI 互相竞争进化,两天后它们发明了一个我看不懂的算法
算法
sinat_2554878111 小时前
为 System.out 编写我们自己的包装类
java·开发语言·算法
阿Y加油吧12 小时前
力扣打卡——盛最多水的容器、三数之和
算法·leetcode·排序算法
Barkamin12 小时前
快速排序非递归实现
java·算法·排序算法
gihigo199812 小时前
距离角度解耦法的MIMO-OFDM雷达波束形成及优化MATLAB实现
开发语言·算法·matlab
WolfGang00732112 小时前
代码随想录算法训练营 Day12 | 二叉树 part02
算法·深度优先