leetcode 383. 赎金信 python

给你两个字符串: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

  • ransomNotemagazine 由小写英文字母组成

    python 复制代码
    class Solution:
        def canConstruct(self, ransomNote: str, magazine: str) -> bool:
            new_ransomNote = ''.join(sorted(ransomNote))
            new_magazine = ''.join(sorted(magazine))
            length1 = len(new_ransomNote)//先排序
            length2 = len(new_magazine)
            i,k = 0,0
            if(length2<length1)://magazine长度小于ransomNote返回失败
                return False
            else:
                while(i<length1 and k<length2)://二者数组下标均不可越界
                    if(new_magazine[k]>new_ransomNote[i]):
                        return False
                    elif(new_magazine[k]==new_ransomNote[i]):
                        i+=1
                        k+=1
                    elif(new_magazine[k]<new_ransomNote[i]):
                        k+=1
                if(i==length1):
                    return True
                return False
相关推荐
风吹夏回8 小时前
Python 全局异常处理:从“满屏 try-except”到优雅兜底
开发语言·python
kkeeper~8 小时前
0基础C语言积跬步之数据在内存中的存储
c语言·数据结构·算法
小熊Coding9 小时前
Python爬取当当网二手图书项目实战!
开发语言·爬虫·python·beautifulsoup·requests·二手图书
秋99 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本9 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
田里的水稻9 小时前
OE_ubuntu26.04与宿主机之间复制粘贴内容
人工智能·python·机器人
wabs66610 小时前
关于贪心算法的一些自我总结【力扣45.跳跃游戏II】【灵感来源:代码随想录】
算法·贪心算法·复盘
2401_8769641310 小时前
【湖北专升本】2026湖北专升本真题PDF+备考资料汇总
数据结构·人工智能·经验分享·深度学习·算法·计算机视觉
jiayong2310 小时前
02 创建虚拟环境
python
旺仔来了10 小时前
不联网的Linux下部署python环境
linux·开发语言·python