首页 > 其他分享 >同构字符

同构字符

时间:2022-10-21 00:44:08浏览次数:41  
标签:字符 同构 false map2 map1 字符串

同构字符

一、题目描述

给定两个字符串,判断是否时两个同类型的字符串。同类型指的时如ABB,ABAB等。
实例:

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

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

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

二、解题思路

只需要考虑字符串的形式,无需考虑具体字符。可以遍历字符串,将每个字符串转成aabb的形式,在比较是否相等。

三,解题方法

创建两个map集合,将map1中每个键存为s字符串的每个字符,val对应t中的字符。map2则相反。只需要判断map1中value的值与map2中key的值是否相等。再反过来map2中的即可。
代码实现:

class Solution {
    public boolean isIsomorphic(String s, String t) {

        Map<Character,Character> map1 = new HashMap<Character,Character>();
        Map<Character,Character> map2 = new HashMap<Character,Character>();
        if(s.length() != t.length()){
            return false;
        }
        for(int i=0;i<s.length();i++){
            char sChar = s.charAt(i);
            char tChar = t.charAt(i);

            if(map1.containsKey(sChar) && map1.get(sChar) != tChar){
                return false;
            }

            if(map2.containsKey(tChar) && map2.get(tChar) != sChar){
                return false;
            }
            
            map1.put(sChar,tChar);
            map2.put(tChar,sChar);
            
        }

        return true;
    }
}

标签:字符,同构,false,map2,map1,字符串
From: https://www.cnblogs.com/zjjtt/p/16812117.html

相关文章

  • 每日算法:驼峰转换,判断连续字符
    每日算法今日是:1、将字符串转换为驼峰格式2、判断字符串中是否有连续重复的字符将字符串转换成驼峰格式//css中经常有类似background-image这种通过-连接的字......
  • 技巧:设置条件字符串
       并没太多可讲的有趣的一点在于判断识别码是否正确的时候,为了能够判断“X”的情况,我使用了if语句,但是实际上,我们使用一个长的字符串mod[20]=“0123456789X”就可......
  • 【java json基础】字符串转json json转字符串 json数组转换 【java基础知识】【实用】
    读书就是:从薄读厚,再从厚读薄的过程。(前部分:问答,后部分:测试举例)         数据测试:举例:      ......
  • 【Python】第3章-14 字符串字母大小写转换
    本题要求编写程序,对一个以“#”结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出。输入格式:输入为一个以“#”结束的字符串(不......
  • 【Python】第3章-13 字符串替换
    本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:原字母 对应字母A ZB YC XD W… …X CY BZ A输入格式:输入在一行中给出一个不超过80个字符、......
  • 用Transformer实现OCR字符识别!
     Datawhale干货 作者:安晟、袁明坤,Datawhale成员在CV领域中,transformer除了分类还能做什么?本文将采用一个单词识别任务数据集,讲解如何使用transformer实现一个简单的OCR文......
  • xml转义字符
    &lt;<小于号&gt;>大于号&amp;&和&apos;’单引号&quot;"双引号......
  • 打印自定义行和列的字符
     #include<stdio.h>#pragmawarning(disable :4996)voiddisplay(charcr,intlines,intwidth);intmain() {  intch;  introw,col;  while((c......
  • C语言中字符串详解
    C语言中字符串详解字符串时是C语言中非常重要的部分,我们从字符串的性质和字符串的创建、程序中字符串的输入输出和字符串的操作来对字符串进行详细的解析。什么是字符......
  • python 常用的字符串处理函数
    find()  功能:检测字符串是否包含特定字符,如果包含,则返回开始的索引;否则返回-1##find()函数str='helloworld'#'wo'在字符串中print(str.find('wo'))#'wc'......