当前位置: 首页 > article >正文

欢乐力扣:同构字符串

文章目录

  • 1、题目描述
  • 2、 代码


1、题目描述

 同构字符串。给定两个字符串 s 和 t ,判断它们是否是同构的。如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。
 每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。

愣是没读懂,大致就是能够按照同一套映射法则,既可以从s到t,也可以从t到s。

在这里插入图片描述

2、 代码

 同时遍历两个字符串中每个字符,判断取出这两个字符是不是能够互相映射到对方。直接看代码把…

class Solution:
    def isIsomorphic(self, s: str, t: str) -> bool:
        # 同构必须长度相等
        if len(s) != len(t):
            return False 
        # 存储两个互逆的映射
        s2t, t2s = {}, {} 
        for cs, ct in zip(s, t):
            # step1: check s2t 
            if cs not in s2t:
                s2t[cs] =ct
            else:
                # 判断s2t映射是否跟ct对应
                if s2t[cs] != ct:
                    return False 
            # step2: check t2s
            if ct not in t2s:
                t2s[ct] = cs
            else:
                if t2s[ct] != cs:
                    return False 
        return True 

http://www.kler.cn/a/559509.html

相关文章:

  • 使用Python和正则表达式爬取网页中的URL数据
  • WSL2下ubuntu开启NFS服务
  • STM32MP157A单片机移植Linux驱动
  • 算法日记21:SC72(最小生成树):prim的priority_queue()堆优化
  • 四、综合案例(Unity2D)
  • React入门案例-Hello React案例
  • 图论 之 弗洛伊德算法求解全源最短路径
  • QT闲记-工具栏
  • ICRA2024:CoLRIO,用于机器人群体的激光雷达测距-惯性集中状态估计
  • Linux | 进程控制(进程终止与进程等待)
  • Springboot中分析SQL性能的两种方式
  • TIKTOK矩阵系统的软件服务
  • C#上位机--循环语句
  • Unity VRoid+Blender+Unity 3D人物模型导入使用
  • DeepSeek掘金——基于DeepSeek-R1构建文档问答机器人
  • Linux 实用指令
  • ubuntu新系统使用指南
  • Ollama Open WebUI
  • 【Transformer架构】
  • AI知识架构之数据采集