【力扣】383.赎金信

题目描述

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

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

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

示例 1:

输入 :ransomNote = "a", magazine = "b"
输出:false

示例 2:

输入 :ransomNote = "aa", magazine = "ab"
输出:false

示例 3:

输入 :ransomNote = "aa", magazine = "aab"
输出:true

提示:

  • 1 <= ransomNote.length, magazine.length <= 105
  • ransomNote 和 magazine 由小写英文字母组成

解题方案

  • C 哈希表
c 复制代码
bool canConstruct(char* ransomNote, char* magazine) {
    int alphabet[26] = {0};
    int i = 0;

    for (i = 0; i < strlen(magazine); i++) {
        alphabet[magazine[i] - 'a']++;
    }

    for (i = 0; i < strlen(ransomNote); i++) {
        alphabet[ransomNote[i] - 'a']--;
    }

    for (i = 0; i < 26; i++) {
        if (alphabet[i] < 0) {
            return false;
        }
    }
    return true;
}
相关推荐
星恒随风9 分钟前
C++ STL 详解:set 与 multiset 的使用、区间查询和算法应用
开发语言·c++·笔记·学习·算法
Lumos18617 分钟前
《ESP32 物联网全栈实战-02》ESP-IDF 工程结构
算法
QN1幻化引擎27 分钟前
把 意识评测做成了一场"非侵入实验":不碰生产代码,分数反而更真了
人工智能·算法·架构
冻柠檬飞冰走茶1 小时前
PTA基础编程题目集 7-17 爬动的蠕虫(C语言实现)
c语言·开发语言·数据结构·算法
会编程的土豆2 小时前
LeetCode 热题 HOT100(一):哈希表与双指针入门(Go 实现)
算法·leetcode·职场和发展
学习中.........2 小时前
并行 BPE 训练 与 手写 `Tokenizer`
人工智能·算法·机器学习·语言模型
科学实验家2 小时前
动态规划2
算法·动态规划
糖果店的幽灵11 小时前
人已经用 WorkBuddy 找工作拿了面试,你还在一份份手工改简历
人工智能·面试·职场和发展·langgraph
imuliuliang11 小时前
关于数据结构在算法设计中的核心作用解析7
算法