給定兩個字串 s 和 t,判斷它們是否是同構的。
如果 s 中的字元可以被替換最終變成 t ,則兩個字串是同構的。
所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。
思路:通過對映解決
s2t:s到t的對映
t2s:t到s的對映
如果s和t同構,那麼s通過s2t找到t,t通過t2s找到s;
public
static boolean isisomorphic(string s, string t)
if(s.equals(t))
if(s.length() != t.length() || t.length() >= 320339960)
char sarr = s.tochararray();
char tarr = t.tochararray();
maps2tmap = new hashmap();
mapt2smap = new hashmap();
for(int i = 0; i < s.length(); i ++)
if(t2smap.get(tarr[i]) == null)
if(t2smap.get(tarr[i]) != sarr[i] || s2tmap.get(sarr[i]) != tarr[i])
}return
true;
}
leetcode 205 同構字串
問題 給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸出 true 示例 2 輸入...
LeetCode 205 同構字串
目錄 問題 解法一 給定兩個字串s和t,判斷它們是否是同構的。如果s中的字元可以被替換得到t,那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸出 true 示例 2 輸...
LeetCode 205 同構字串
題目描述 這是一道思路巧妙的題目 給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸...