leetcode 205. 同构字符串
生活随笔
收集整理的這篇文章主要介紹了
leetcode 205. 同构字符串
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目
思路
維護(hù)兩個(gè) HashMap,一個(gè)存放字符串 1 到字符串 2 的映射,另一個(gè)存放字符串 2 到字符串 1 的映射。
對(duì)于字符串中的每一個(gè)字符,分別驗(yàn)證是否符合這兩個(gè)映射。
題解
import java.util.HashMap;class Solution {/*** 驗(yàn)證兩個(gè)字符串中,相同字母出現(xiàn)的位置是否相同* 維護(hù)兩個(gè) HashMap,一個(gè)存放字符串 1 到字符串 2 的映射,另一個(gè)存放字符串 2 到字符串 1 的映射* 對(duì)于每一個(gè)字符,分別驗(yàn)證這兩個(gè)映射*/public boolean isIsomorphic(String s, String t) {if (s == null || t == null || s.length() != t.length()) return false;HashMap<Character, Character> hashMapS2T = new HashMap();HashMap<Character, Character> hashMapT2S = new HashMap();char[] ss = s.toCharArray();char[] tt = t.toCharArray();for (int i = 0; i < ss.length; i++) {if (hashMapS2T.containsKey(ss[i])) {if (tt[i] != hashMapS2T.get(ss[i]))return false;} else {hashMapS2T.put(ss[i], tt[i]);}if (hashMapT2S.containsKey(tt[i])) {if (ss[i] != hashMapT2S.get(tt[i]))return false;} else {hashMapT2S.put(tt[i], ss[i]);}}return true;} }評(píng)論區(qū)的一些奇特解法
for (let i = 0; i < s.length; i++) {if (s.indexOf(s[i]) !== t.indexOf(t[i])) return false; } return true;總結(jié)
以上是生活随笔為你收集整理的leetcode 205. 同构字符串的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode 204. 计数质数
- 下一篇: Spring 源码讲解:bean 的创建