【LeetCode】383. 赎金信

题目:383. 赎金信

由于此题只含有小写字母,并且magazine里面的字母不可重复使用.

故首先用一个长度为26的整形数组记录magazine里字母出现的次数。

再用这个整形数组跟ransomeNote进行遍历比较,当数组中出现-1时,说明false,否则true.

代码:

java 复制代码
class Solution {
    public boolean canConstruct(String ransomNote, String magazine) {
        int[] tmp = new int[26];
        
        //遍历magazine中的字符
        for(int i=0;i<magazine.length();i++){
            char ch = magazine.charAt(i);
            tmp[ch-'a']++;
        }

        //遍历ransomNote中的字符
        for(int i=0;i<ransomNote.length();i++){
            char ch = ransomNote.charAt(i);
            tmp[ch-'a']--;
            if(tmp[ch-'a']<0){
                return false;
            }
        }

        return true;
    }
}

运行结果:

相关推荐
信竞星球_少儿编程题库13 小时前
2026年全国信息素养大赛算法应用主题赛 丝路新城 Python 模拟卷(三)
开发语言·python·算法
云泽80813 小时前
笔试算法 - 滑动窗口篇(二):从异位词到最小覆盖子串的通用框架
c++·算法
qq_2965532713 小时前
[特殊字符] 搜索插入位置:从O(n)到O(log n)的优雅进化
数据结构·算法·面试·分类·柔性数组
凯瑟琳.奥古斯特13 小时前
力扣3654:二维矩阵连续空位统计
数据结构·数据库·算法·职场和发展
basketball61614 小时前
并查集基础算法总结 C++ 实现
开发语言·c++·算法
故事和你9114 小时前
洛谷-【图论2-2】最短路3
开发语言·数据结构·c++·算法·动态规划·图论
yong999014 小时前
基于VC++的图像匹配金字塔算法
c++·算法·计算机视觉
Rhi63714 小时前
第 4 篇:用JWT与角色权限构筑安全的API防线
算法
fengfuyao98514 小时前
基于MATLAB的ALOHA防碰撞、二进制搜索算法和帧时隙算法
人工智能·算法·matlab