【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;
    }
}

运行结果:

相关推荐
shangjian0073 小时前
AI大模型-评价指标-相关术语
人工智能·算法
Live&&learn4 小时前
算法训练-数据结构
数据结构·算法·leetcode
松岛雾奈.2305 小时前
机器学习--PCA降维算法
人工智能·算法·机器学习
电子_咸鱼6 小时前
【STL string 全解析:接口详解、测试实战与模拟实现】
开发语言·c++·vscode·python·算法·leetcode
sweet丶6 小时前
适合iOS开发的一种缓存策略YYCache库 的原理
算法·架构
是宇写的啊6 小时前
算法—滑动窗口
算法
风筝在晴天搁浅6 小时前
代码随想录 509.斐波那契数
数据结构·算法
落落落sss6 小时前
java实现排序
java·数据结构·算法
limenga1027 小时前
支持向量机(SVM)深度解析:理解最大间隔原理
算法·机器学习·支持向量机
coder江7 小时前
二分查找刷题总结
算法