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

运行结果:

相关推荐
列星随旋2 分钟前
矩阵快速幂
java·算法·矩阵
z200509304 分钟前
今日算法(回溯全排列)
c++·算法·leetcode
Boom_Shu6 分钟前
构造函数程序
数据结构·算法
MicroTech202512 分钟前
微算法科技(NASDAQ: MLGO)量子安全与区块链:量子神经网络QNN赋能动态共识与量子密钥分发
科技·算法·安全
sali-tec29 分钟前
C# 基于OpenCv的视觉工作流-章81-弯脚检测
图像处理·人工智能·opencv·算法·计算机视觉
kkeeper~31 分钟前
0基础C语言积跬步之自定义类型联合和枚举
c语言·开发语言·算法
昵称好难啊31 分钟前
4.OpenClaw源码解析_路由的概念
人工智能·算法
Bingorl36 分钟前
机器学习之KNN算法
人工智能·算法·机器学习
muddjsv38 分钟前
《算法导论》入门学习路径:从零基础到系统掌握
学习·算法
KaMeidebaby1 小时前
卡梅德生物技术快报|组蛋白乙酰化修饰调控动脉粥样硬化的分子机制及中药表观干预研究
网络·人工智能·网络协议·tcp/ip·算法