[leetcode]205. Isomorphic Strings同构字符串
哈希表可以用ASCII码数组来实现,可以更快
public boolean isIsomorphic(String s, String t) {
        /*
        思路是记录下每个字符出现的位置,当有重复时,检查另外一个map是不是也是对应位置重复
         */
        if (s.length()!=t.length())
        {
            return false;
        }
        Map<Character,Integer> map1 = new HashMap<>();
        Map<Character,Integer> map2 = new HashMap<>();
        for (int i = 0; i < s.length(); i++) {
            char c1 = s.charAt(i);
            char c2 = t.charAt(i);
            //有重复的情况
            if (map1.containsKey(c1))
            {
                //注意这里有个小插曲,就是map得到的包装类,所有包装类比较值 相等要用equals()方法,不能用==,这个字符串是一样的
                if ((!map2.containsKey(c2))||(!Objects.equals(map2.get(c2), map1.get(c1))))
                {
                    return false;
                }
                else
                {
                    map1.put(c1,i);
                    map2.put(c2,i);
                }
            }
            //没有重复的情况
            else
            {
                if (map2.containsKey(c2))
                {
                    return false;
                }
                map1.put(c1,i);
                map2.put(c2,i);
            }
        }
        return true;
    }
[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 chara ...
 - 205 Isomorphic Strings 同构字符串
		
给定两个字符串 s 和 t,判断它们是否是同构的.如果 s 中的字符可以被替换最终变成 t ,则两个字符串是同构的.所有出现的字符都必须用另一个字符替换,同时保留字符的顺序.两个字符不能映射到同一个字 ...
 - [LeetCode] Isomorphic Strings  同构字符串
		
Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if the chara ...
 - LeetCode 205 Isomorphic Strings(同构的字符串)(string、vector、map)(*)
		
翻译 给定两个字符串s和t,决定它们是否是同构的. 假设s中的元素被替换能够得到t,那么称这两个字符串是同构的. 在用一个字符串的元素替换还有一个字符串的元素的过程中.所有字符的顺序必须保留. 没有两 ...
 - LeetCode 205. Isomorphic Strings (同构字符串)
		
Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if the chara ...
 - Leetcode 205 Isomorphic Strings 字符串处理
		
判断两个字符串是否同构 hs,ht就是每个字符出现的顺序 "egg" 与"add"的数字都是122 "foo"是122, 而"ba ...
 - LeetCode 205 Isomorphic Strings
		
Problem: Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if ...
 - [LeetCode] 205. Isomorphic Strings 解题思路 - Java
		
Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if the chara ...
 - Java for LeetCode 205 Isomorphic Strings
		
Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if the chara ...
 
随机推荐
- C++/Java小白解Leetcode题,发现了知识盲区……
			
一.初见LeetCode 大一时候学习C++,根据课程一直在PTA平台做题目,数据结构和算法的作业题目也是在PTA.后来发现牛客网学习资源也很丰富,孤陋寡闻,前几个月在知道LeetCode这个平台,跟 ...
 - YoyoGo使用指南
			
YoyoGo是一个使用Golang编写的一个简单.轻量.快速.基于依赖注入的微服务框架,目前依然在研发阶段,欢迎Star以及一起参与到框架的研发 GitHub地址:https://github.com ...
 - 微软发布 Pylance:改善 VS Code 中的 Python 体验
			
原标题:微软发布 Pylance:改善 VS Code 中的 Python 体验 来源:开源中国 微软宣布推出一种新的 Python 语言服务器,名为 Pylance,其可利用语言服务器协议与 VS ...
 - 第7.9节 案例详解:Python类封装
			
上节介绍了Python中类的封装机制,本节结合一个具体例子进行详细说明. 我们定义一个Person类,其内部有姓名.年龄和类型三个实例变量,并定义了相关的存取方法: class Person(): ...
 - swagger添加统一认证参数
			
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Co ...
 - 03_py
			
3.1 在编程的语境下,函数 (function) 是指一个有命名的.执行某个计算的语句序列 (se-quence of statements) .在定义一个函数的时候,你需要指定函数的名字和语句序列 ...
 - 题解-Railgun
			
题面 Railgun \(T\) 组测试数据,每次给定 \(n,k\),求(\(F(i)\) 为斐波那契数列第 \(i\) 项): \[\sum_{1\le x_i\le n(1\le i\le k) ...
 - 一起看下MySQL的崩溃恢复到底是怎么回事
			
目录 回顾 思考一个问题 checkponit机制 Checkpoint的种类及触发条件 LSN 推荐阅读 本文稍微有点晦涩.但是看过之后你就能Get到MySQL的崩溃恢复到底是怎么做的! 文章公号 ...
 - linux文件实时同步
			
参考博客:https://www.cnblogs.com/MacoLee/p/5633650.html 一.文件同步很简单 服务端:被动的接收传输过来的数据 客户端:主动提供数据给服务端 安装思路:服 ...
 - 《深入理解计算机系统》实验三 —— Buf Lab
			
这是CSAPP的第三个实验,主要让我们熟悉GDB的使用,理解程序栈帧的结构和缓冲区溢出的原理. 实验目的 本实验的目的在于加深对IA-32函数调用规则和栈结构的具体理解.实验的主要内容是对一个可执 ...