1347. 制造字母异位词的最小步骤数 (中等,Counter)

闲来无事,今天多做一题

  1. 条件很宽,可以任意替换,且排列相同也可以
  2. 所以只要统计每个字母在 s 中比在 t 中多出现的次数之和即可
python 复制代码
class Solution:
    def minSteps(self, s: str, t: str) -> int:
        n = [0] * 26
        for i in s:
            n[ord(i) - ord('a')] += 1
        
        for i in t:
            n[ord(i) - ord('a')] -= 1

        return sum([n[i] if n[i] > 0 else 0 for i in range(26)])

学习

  1. python 求字符的 ASCII码 需要使用内置函数 ord()
  2. python 有一个collections.Counter模块,它可以直接统计一个字符串中字符出现的次数,且它返回一个 dict() 的子类,形式上是字典,但是支持加减法操作,加法就是把同键的加起来,不同键的并到新的字典中;减法把同键的相减(且它会删去做减法后值小于等于0的键值对,本来就是计数的效果,小于等于0了自然没意义了),不同键的键值对则保留被减数的,去除减数的,因此本题可以写成如下形式
python 复制代码
class Solution:
    def minSteps(self, s: str, t: str) -> int:
        return sum((Counter(s) - Counter(t)).values())
相关推荐
py小王子3 分钟前
期刊复现| Python 实现带边缘密度与残差检验的回归拟合图
python·期刊复现
deepin_sir4 分钟前
14 - 面向对象编程
开发语言·python
知识分享小能手4 分钟前
Flask入门学习教程,从入门到精通,Flask智能租房——列表页 知识点详解(7)
python·学习·flask
极客小云7 分钟前
【从 while 循环到可视化智能体:深入拆解 Agent Loop、Codex 风格工具调用、OpenClaw 与 Hermes 背后的技术细节】
数据库·python·大模型·agent·codex·openclaw·hermes
洛水水10 分钟前
【力扣100题】62.滑动窗口最大值
数据结构·算法·leetcode
IronMurphy15 分钟前
算法五十一 64. 最小路径和
算法
醒醒该学习了!18 分钟前
Prompt提示词——带有深度思考模型的提示方法(理论篇)
人工智能·算法·prompt
君为先-bey19 分钟前
Latte——视频生成的潜在扩散变换器
算法·机器学习·音视频·扩散模型
Larcher21 分钟前
Python List、切片与大模型:从入门到实践的优雅之旅
python·ai编程
浅念-22 分钟前
LeetCode刷题专题:FloodFill泛滥填充算法剖析
数据结构·算法·leetcode·职场和发展·深度优先·宽度优先