205. 同构字符串

205. 同构字符串

给定两个字符串 s*t*,判断它们是否是同构的。

如果 s 中的字符可以被替换得到 *t* ,那么这两个字符串是同构的。

所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。

示例 1:

输入: s = "egg", t = "add"
输出: true

示例 2:

输入: s = "foo", t = "bar"
输出: false

示例 3:

输入: s = "paper", t = "title"
输出: true

说明: 你可以假设 s*t* 具有相同的长度。

class Solution:
    def isIsomorphic(self, s: str, t: str) -> bool:
        sset = set(s)
        tset = set(t)
        sl = len(sset)
        tl = len(tset)
        if sl == tl:
            rset = set()
            for i in range(0, len(s)):
                rset.add(s[i]+t[i])
            if len(rset) == tl:
                return True
        return False

版权声明:除特别注明外,本站所有文章均为王晨曦个人站点原创

转载请注明:出处来自王晨曦个人站点 » 205. 同构字符串

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注