leetcode 205. Isomorphic Strings(同构字符串)

[LeetCode]--205. Isomorphic Strings(同构字符串) Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a character must be replaced with another chara 阅读详情

Given two strings s and t, determine if they are isomorphic.

Two strings are isomorphic if the characters in s can be replaced to get t.

All occurrences of a character must be replaced with another character while preserving the order of characters. No two characters may map to the same character but a character may map to itself.

Example 1:

Input: s = “egg”, t = “add”
Output: true
Example 2:

Input: s = “foo”, t = “bar”
Output: false

给出两个字符串s和t,判断是否同构,即s中的字母能被t中对应的字母替换而不改变结构

思路:
可以用HashMap保存s和t对应位置字符(s[i], t[i])
当s[i]存在于map的key中,而value != t[i],则返回false
否则在map中加入(s[i], t[i])
注意下面的例子:
s = ab
t = aa

s[1] = b 不存在于map,但是注意到t[i]是已经存在于value里的,而t[1]=a应该对应a,此时却对应的是b,返回false
因此不仅要check key,当key不存在时还要check value

    public boolean isIsomorphic(String s, String t) {
        if(s == null || t == null || s.length() != t.length()) {
            return false;
        }
        
        HashMap<Character, Character> map = new HashMap<>();
        
        for(int i = 0; i < s.length(); i++) {
            if(map.containsKey(s.charAt(i))) {
               if(map.get(s.charAt(i)) != t.charAt(i)) {
                   return false;
               }
            } else if(map.containsValue(t.charAt(i))) {
                return false;
            } else {
                map.put(s.charAt(i), t.charAt(i));
            }
            
        }
        
        return true;
    }

如果追求更少的time complexity,因为字符只有26个,可以用数组保存每个字符对应的index,当对应的index不一致时返回false

从零到一:QT for OpenHarmony 开发环境实战搭建与踩坑指南 本文是一份详尽的QT for OpenHarmony开发环境搭建实战指南。文章手把手教你如何在Windows和macOS系统上,从环境准备、核心工具(DevEco Studio与社区版QT SDK)安装配置,到创建首个QT Quick项目、解决构建部署中的常见问题,最终实现应用在OpenHarmony设备上运行。内容涵盖关键配置修改、资源管理及深度踩坑经验,旨在帮助开发者高效开启跨平台开发之旅。 阅读详情

相关推荐

如何理解Apollo模型参考自适应控制MRAC

最近有了解到百度无人驾驶Apollo项目中的横向控制有用到MRAC(Model Reference Adaptive Control),于是便详细研究了一下这个控制方法,在此总结一下心得。 什么是MRAC MRAC控制系统的基本结构图如下所示: 它由两个环路组成,由控制器和受控对象组成内环,这一部分称之为可调系统,由参考模型和自适应机构组成外环。实际上,该系统是在常规的反馈控制回路上再附加一个参考模型和控制器参数的自动调节回路而形成。在该系统中,参考模型的输出或状态相当于给定一个动态性能指标,(通常,参考模

zmhzmhzm的博客 6478

同构字符串判定 c语言,C#LeetCode刷题之#205-同构字符串(Isomorphic Strings)

问题给定两个字符串 s 和 t,判断它们是否是同构的。如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。输入:s = “egg”, t = “add”输出:true输入: s = “foo”, t = “bar”输出: false输入: s = “paper”, t =...

weixin_39976081的博客 539

多机器人协同:水下机器人集群的分布式控制与ROS仿真实践

本文探讨了多自主水下机器人(AUV)集群的分布式控制方法,重点分析了欠驱动6自由度AUV模型的反馈线性化技术。通过ROS/Gazebo仿真平台,详细介绍了系统架构设计、通信延迟补偿策略及环境扰动应对方案,为水下协同作业提供实用参考。

jupi8的博客 686

LeetCode题解:Isomorphic Strings

Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a character must be replaced with another chara

追风筝的吃货,汪~ 1009

智慧杯 考试必备

2019.4. 强密码 描述 我们称一个密码是强密码,当且仅当它满足以下所有条件: 由 8 − 16 个字符组成 至少包含一个大写字母 (A-Z) 至少包含一个小写字母 (a-z) 至少包含一个数字 (0-9) 至少包含一个特殊符号 (! @ #$ % & * _ +) 娇娇发现她现在的密码好像不是强密码,请你帮她计算一下最少添加几个 字符可以变成强密码? 输入 输入仅一行,一个字符串,表示娇娇当前的密码 输出 输出一个数表示答案 如果不需要添加任何字符就已.

Fairy1208的博客 2861

YOLOv11改进 | 注意力篇 | YOLOv11引入24年最新的ELA注意力机制,并构建C2PSA_ELA

为了解决这些限制,本文介绍了一种高效的本地注意力(ELA)方法,实现了一个简单的结构,大幅度的性能改善。我们精心设计了ELA中的三个超参数,产生了四个不同的版本:ELA-T,ELAB,ELA-S和ELA-L,以满足不同视觉任务的具体要求,如图像分类,目标检测和语义分割。到此本文的正式分享内容就结束了,在这里给大家推荐我的YOLOv11改进有效涨点专栏,本专栏目前为新开的,后期我会根据各种前沿顶会进行论文复现,也会对一些老的改进机制进行补充,如果大家觉得本文帮助到你了,订阅本专栏,关注后续更多的更新~

tsg6698的博客 1284

同构字符串

题目Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a character must be replaced with another cha

sennybob的博客 4055

PCL 基于法向距离的对应点获取

提出了一种基于法向量欧氏距离的点云配准方法。详细推导了法向量距离计算公式,并给出具体计算流程。在代码实现部分,采用PCL库完成了点云法向量计算和对应关系估计,通过可视化验证了算法有效性。实验结果表明,该方法能够准确获取点云间的对应关系,为后续点云配准奠定了基础。

点云侠的博客 225

【leetcode】205. Isomorphic Strings(Python & C++)

205. Isomorphic Strings题目链接205.1 题目描述:Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a charact

I am what i am 1079

详解大模型微调数据集构建方法(持续更新)

本文详细介绍了大模型微调数据集构建方法,希望能对学习大模型的同学们有所帮助。 文章目录 1. 前言 2. 微调数据集构建方法 2.1 方法一 2.2 方法二 2.3 方法三 2.4 方法四 2.5 方法五

herosunly的博客 28万+

华为OD机试真题 新系统2026-04-08 Python&JS 实现【配置操作失败数量统计】

模拟一个系统的命令行配置,包含添加、修改、删除三项操作,详情如下: 添加操作命令:add_rulerule_id=1rule_index = 18 修改操作命令: mod_rule rule_id= 1rule_index = 100 删除操作命令:del_rulerule_id=1

MISAYAONE的博客 585

LeetCode | 205. Isomorphic Strings

题目: Given two stringssandt, determine if they are isomorphic. Two strings are isomorphic if the characters inscan be replaced to gett. All occurrences of a character must be replaced with another character while preserving the order of characte...

iLOVEJohnny的博客 170

【100%通过率】华为od 机试真题 C语言 实现【补种未成活胡杨】

近些年来,我国防沙治沙取得显著成果。某沙漠新种植N棵胡杨(编号1-N),排成一排。一个月后,有M棵胡杨未能成活。现可补种胡杨K棵,请问如何补种(只能补种,不能新种),可以得到最多的连续胡杨树?

MISAYAONE的博客 1653

【Leetcode】205. 同构字符串(Isomorphic Strings)

Leetcode - 205 Isomorphic Strings (Easy) Input: s = "egg", t = "add" Output: true Input: s = "foo", t = "bar" Output: false 解题思路:判断上一次字母出现的位置是否相同。 public boolean isIsomorphic(String s, String t) { ...

厉兵秣码 322

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Leetcode 205 Isomorphic Strings 同构字符串

给出两个字符串s和t,判断它们是否是同构的。如果可以通过替换s中的字符来得到t,则两个字符串是同构的。

(ง •̀_•́)ง 1019

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

[java] LeetCode 205. Isomorphic Strings | 同构字符串

题目描述 分析 这题考查的是映射表的建立,映射表一般通过map的数据结构来实现;题目中也提到了一个字符不能被重复映射,这令我想到了set到数据结构。因此这题需要用到HashMap和HashSet。 特殊情况处理:长度不等,直接返回false。 过程描述:取出对应位置的两个字符串的字符a和b。先判断map中是否存在这个字符,如果存在,则必须满足b等于a在map中的映射值,否则返回false;如果m...

马一凡的博客 334

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

[LeetCode] 205. Isomorphic Strings 同构字符串

[LeetCode] 205. Isomorphic Strings 同构字符串 Given two strings s and t, determine if they are isomorphic.   Two strings are isomorphic if the characters in s can be replaced to get t.   All occurrences o...

ikkl220的博客 295

LeetCode 205:同构字符串 Isomorphic Strings

题目: 给定两个字符串 s 和 *t*,判断它们是否是同构的。如果 s 中的字符可以被替换得到 *t* ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,...

爱写Bug 205

LeetCode205 Isomorphic Strings同构字符串

题目要求: Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a character must be replaced with anothe

ncst 489

LeetCode - 205 - 同构字符串(isomorphic-strings)

Create by jsliang on 2019-07-12 18:40:54Recently revised in 2019-07-12 19:29:09一 目录不折...

weixin_41806099的博客 214

Leetcode 205.同构字符串(Isomorphic Strings)

Leetcode 205.同构字符串 1 题目描述(Leetcode题目链接)   给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。 所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。 输入: s = "egg", t = "add" 输出: true 输入: s = "foo", t = "bar" 输出: false 输入: s = "paper", t = "tit

qq_39378221的博客 219

LeetCode题解-python 205.同构字符串 Isomorphic Strings (Easy)

LeetCode题解-python205.同构字符串 Isomorphic Strings (Easy)解题思路github题目代码(python3) 205.同构字符串 Isomorphic Strings (Easy) 给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。 所有出现的字符都必须用另一个字符替换,同时保留字符的顺序...

LKY111的专栏 636

leetcode 205. isomorphic-strings 同构字符串 python3

时间:2020-8-30 题目地址:https://leetcode-cn.com/problems/isomorphic-strings/ 题目难度:Easy 题目描述: 给定两个字符串s和t,判断它们是否是同构的。 如果s中的字符可以被替换得到t,那么这两个字符串是同构的。 所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。 示例 1: 输入: s = "egg", t = "add" 输出: true 示例 ...

isabloomingtree的博客 270

leetcode 205. 同构字符串(Isomorphic Strings)

目录 题目描述: 示例 1: 示例 2: 示例 3: 解法: 题目描述: 给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。 所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。...

weixin_30604651的博客 131

leetcode 205 Isomorphic Strings 同构字符串 python 最简解法

所有Leetcode题目不定期汇总在 Github, 欢迎大家批评指正,讨论交流。 ''' Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if the characters in s can be replaced to get t. All occurren...

Jasmine_dream 291

java字符串同构_LeetCode 205:同构字符串Isomorphic Strings

题目:给定两个字符串 s 和 *t*,判断它们是否是同构的。如果 s 中的字符可以被替换得到 *t* ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。Given two strings *s* and *t*, determine if they are isomorphic.Two strings ar...

weixin_42317115的博客 240
上一篇: leetcode 219. Contains Duplicate II (重复数字II)
下一篇: matlab conv2的图像卷积与CNN中图像卷积的区别
蓝羽飞鸟
博客等级 码龄8年 1万+粉丝 727原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝羽飞鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值