LeetCode|Day24|383. 赎金信|Python刷题笔记

LeetCode|Day24|383. 赎金信|Python刷题笔记

🗓️ 本文属于【LeetCode 简单题百日计划】系列
👉 点击查看系列总目录 >>


📌 题目简介

题号:383. 赎金信
难度:简单
题目链接:点击跳转


🧾 题目描述(简要)

判断一个字符串 ransomNote 能否由另一个字符串 magazine 里的字符构成。

示例:

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

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

💡 解法:使用 Counter 比较字符数量

from collections import Counter

class Solution:
    def canConstruct(self, ransomNote: str, magazine: str) -> bool:
        return Counter(ransomNote) <= Counter(magazine)

🧠 我的理解

  • 使用 Counter 分别统计两个字符串中每个字符出现的次数;
  • 判断 ransomNote 中的每个字符数量是否都小于等于 magazine
  • Python 中 Counter1 <= Counter2 表示元素计数包含关系。

📌 基础语法复习:

  • collections.Counter:字符计数字典;
  • <= 运算符可以比较两个 Counter;
  • 一行解法,适合竞赛和面试写法。

📌 返回总目录:点我回目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值