LeetCode每日一题 | 383. 赎金信

文章目录

    • [LeetCode-383. 赎金信](#LeetCode-383. 赎金信)

LeetCode-383. 赎金信

题目描述

原题链接

给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。

如果可以,返回 true ;否则返回 false 。

magazine 中的每个字符只能在 ransomNote 中使用一次。

问题分析

由于字符只涉及小写字母,因此遍历过程中只需要统计每个小写字母的出现次数。

若字符串magazine中的每个英文字母的统计次数都大于等于ransomNote对应英文字母的出现次数,则ransomNote能由magazine里面的字符构成。

程序代码(Golang 版本)

go 复制代码
func canConstruct(ransomNote string, magazine string) bool {
    if len(ransomNote) > len(magazine) {
        return false
    }
    m := [26] int{}
    // k, v
    for _, c := range magazine {
        m[c - 'a']++
    }
    for _, c := range ransomNote {
        m[c - 'a']--
        if m[c - 'a'] < 0 {
            return false
        }
    }
    return true
}
相关推荐
装不满的克莱因瓶1 分钟前
掌握感知器的学习原理
人工智能·python·神经网络·算法·ai·卷积神经网络
Lsk_Smion2 分钟前
力扣实训 _ [994].腐烂的橘子/图论
算法·leetcode·图论
轻微的风格艾丝凡10 分钟前
两电平三相VSC整流模式从不控整流平滑切换至有源整流调试记录
算法·dsp·c2000
dongf201924 分钟前
R语言KNN算法
算法·数据分析·r语言
l1t42 分钟前
DeepSeek总结的 waddler,一个 Go 语言编写的从 YAML 文件运行的 ETL 管道
开发语言·golang·etl
小O的算法实验室1 小时前
2025年IEEE TASE,基于双层耦合平均场博弈的大规模智能体集成任务分配与轨迹规划
人工智能·算法·机器学习
8Qi81 小时前
LeetCode 337:打家劫舍 III(House Robber III)—— 题解 ✅
算法·leetcode·二叉树·动态规划
地平线开发者1 小时前
从 INT64 Div 算子约束到 Cast 修复全流程
算法
2601_961194021 小时前
教资科三美术考什么|初中高中美术题型考点和模板资料
leetcode·elasticsearch·职场和发展·蓝桥杯·pat考试·lucene
AI科技星1 小时前
基于奇合数边界的离散解析数论与双螺旋宇宙本体大统一体系论文全部数学公式汇总表
人工智能·算法·机器学习·架构·学习方法