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

运行结果:

相关推荐
颜酱9 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
m0_736919109 小时前
C++代码风格检查工具
开发语言·c++·算法
yugi9878389 小时前
基于MATLAB强化学习的单智能体与多智能体路径规划算法
算法·matlab
DuHz9 小时前
超宽带脉冲无线电(Ultra Wideband Impulse Radio, UWB)简介
论文阅读·算法·汽车·信息与通信·信号处理
Polaris北极星少女10 小时前
TRSV优化2
算法
代码游侠10 小时前
C语言核心概念复习——网络协议与TCP/IP
linux·运维·服务器·网络·算法
2301_7634724611 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
abluckyboy11 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法
园小异11 小时前
2026年技术面试完全指南:从算法到系统设计的实战突破
算法·面试·职场和发展
m0_7066532312 小时前
分布式系统安全通信
开发语言·c++·算法