欢乐力扣:赎金信

文章目录


1、题目描述

赎金信,给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。如果可以,返回 true ;否则返回 false 。magazine 中的每个字符只能在 ransomNote 中使用一次。

2、 代码

python 复制代码
class Solution:
    def canConstruct(self, ransomNote: str, magazine: str) -> bool:
        from collections import defaultdict
        # 构造字典存储字符串的字母和数量
        ref_dic = defaultdict(int)
        for char in magazine:
            ref_dic[char] +=1
        # 遍历
        for char in ransomNote:
            if char in ref_dic:
                ref_dic[char] -=1  
                # 如果减到0了,则需要彻底移除这个key
                if ref_dic[char] == 0:
                    del ref_dic[char] 
            else:
                return False 
        return True 
相关推荐
我是海飞几秒前
杰理JL703N SSD1306 OLED(128x64) 点阵屏移植说明
单片机·算法·嵌入式·音频·杰理
wabs6661 小时前
关于图论【最短路径之Bellman_ford 算法(单源有限最短路)|卡码网96.城市间货物运输III的思考】
数据结构·算法·图论·卡码网·bellman_ford·单源有限最短路
lsylalalala3 小时前
常见的排序算法1
数据结构·算法·排序算法
想吃火锅10053 小时前
【leetcode】54. 螺旋矩阵
算法·leetcode·矩阵
想吃火锅10054 小时前
【leetcode】300. 最长递增子序列
算法·leetcode·职场和发展
imaol14 小时前
数据结构---队列
java·数据结构·算法
数模竞赛Paid answer4 小时前
2026年电工杯数学建模A题绿电直连型电氢氨园区优化运行求解全过程论文及程序
算法·数学建模·电工杯
疯狂打码的少年4 小时前
【数据结构】串的模式匹配:KMP算法(重点)
数据结构·笔记·算法
Dr.kangder4 小时前
嵌入式面试总结(八)——大小端
嵌入式硬件·面试·职场和发展·架构·嵌入式
晚风醉蝶5 小时前
第零篇-算法全景图
算法