LeetCode 205. 同构字符串

LeetCode 205. 同构字符串

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

如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。

每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。

示例 1:

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

输出:true

示例 2:

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

输出:false

示例 3:

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

输出:true

提示:

1 <= s.length <= 5 * 104

t.length == s.length

s 和 t 由任意有效的 ASCII 字符组成

哈希表,还是用两个哈希表构建双射关系比较合适

python 复制代码
class Solution:
    def isIsomorphic(self, s: str, t: str) -> bool:
        length = len(s)
        d = {}
        for i in range(length):
            if s[i] not in d:
                d[s[i]] = t[i]
            else:
                if d[s[i]] != t[i]:
                    return False
        return len(set(d.keys())) == len(set(d.values()))
相关推荐
dangdang___go2 分钟前
动态内存管理||malloc和free.realloc和calloc
c语言·开发语言·算法·动态内存管理
稚辉君.MCA_P8_Java2 分钟前
Gemini永久会员 快速排序(Quick Sort) 基于分治思想的高效排序算法
java·linux·数据结构·spring·排序算法
x***44012 分钟前
linux 设置tomcat开机启动
linux·运维·tomcat
数字化脑洞实验室15 分钟前
智能决策与决策优化:从算法到产业的演进逻辑
算法
cpp_250115 分钟前
P5412 [YNOI2019] 排队
数据结构·c++·算法·题解·洛谷
正在努力的小河21 分钟前
Linux 块设备驱动实验
linux·运维·服务器
kingmax5421200829 分钟前
图论核心算法(C++):包括存储结构、核心思路、速记口诀以及学习方法, 一站式上机考试学习【附PKU百练,相关练习题单】
c++·算法·图论·信奥赛·上机考试·百练·pku
罗湖老棍子31 分钟前
【例9.15】潜水员(信息学奥赛一本通- P1271)
c++·算法·动态规划·二维费用背包
_OP_CHEN36 分钟前
算法基础篇:(二十一)数据结构之单调栈:从原理到实战,玩转高效解题
数据结构·算法·蓝桥杯·单调栈·算法竞赛·acm/icpc
代码游侠1 小时前
学习笔记——数据结构学习
linux·开发语言·数据结构·笔记·学习