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
}
相关推荐
飞Link1 小时前
动作方法中的分割与过度分割方法全解析(含代码实战与踩坑案例)
人工智能·python·算法·计算机视觉
张宇Joaquin2 小时前
鲲鹏统一并行加速库KUPL--异步数据拷贝
线性代数·算法·矩阵·numpy
GlobalInfo2 小时前
创新不是追逐热点,是在变化中建立长期竞争力
大数据·算法
ttwuai2 小时前
Go 后台附件迁到对象存储后,path、cdnUrl 和 tenant_id 怎么一起验?
开发语言·后端·golang
lvwangshu2 小时前
线性代数基础 Linear Algebra Basics
数学·算法
ZhouDevin2 小时前
算法论文/数据集5——AlignPrune(CVPR2026)基于样本损失时间序列精确识别噪声样本
算法
ttwuai3 小时前
Go 后台清空操作日志失败,权限和无 WHERE 删除怎么排查?
开发语言·后端·golang
十铭忘3 小时前
HMM(隐马尔可夫模型)的理解7——Baum–Welch 算法
人工智能·算法
明月_清风3 小时前
十大经典排序算法 Go 实现全解:从入门到面试通关
后端·算法·排序算法
gsls2008084 小时前
OpsKat封装MCP:用 Go 标准库把运维 CLI 变成 AI 的“手“
运维·人工智能·golang·mcp