Leetcode 1347:異所性文字の単語数(超詳細溶液!!!)の製造における最小ステップ

あなたは長さの等しい2つの文字列を与えるst各ステップは、あなたが選ぶことができるt任意の1文字に置き換えられ、別の文字

リターンtになるためのs単語異所性最小工程での文字の数。

異所性ワード文字が同じ文字を指しますが、別の文字列に配置されています。

例1:

输出:s = "bab", t = "aba"
输出:1
提示:用 'b' 替换 t 中的第一个 'a',t = "bba" 是 s 的一个字母异位词。

例2:

输出:s = "leetcode", t = "practice"
输出:5
提示:用合适的字符替换 t 中的 'p', 'r', 'a', 'i' 和 'c',使 t 变成 s 的字母异位词。

例3:

输出:s = "anagram", t = "mangaar"
输出:0
提示:"anagram" 和 "mangaar" 本身就是一组字母异位词。 

例4:

输出:s = "xxyyzz", t = "xxyyzz"
输出:0

例5:

输出:s = "friend", t = "family"
输出:4

ヒント:

  • 1 <= s.length <= 50000
  • s.length == t.length
  • sそして、t小文字のみが含まれています

問題解決のためのアイデア

アイデアは非常に単純で、それぞれ、統計であるst、その後、貧弱な文字セットの数の両方の文字を。

class Solution:
    def minSteps(self, s: str, t: str) -> int:
        cnt1, cnt2 = map(collections.Counter, (s, t))
        return sum((cnt1 - cnt2).values())

私は私に追加の質問の他の言語バージョンGitHubのLeetcode

ご質問がある場合は、私が指摘したいです!

公開された730元の記事 ウォンの賞賛456 ビュー830 000 +

おすすめ

転載: blog.csdn.net/qq_17550379/article/details/104254497