目錄
問題:解法一
給定兩個字串s和t,判斷它們是否是同構的。
如果s中的字元可以被替換得到t,那麼這兩個字串是同構的。
所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。
示例 1:
示例 2:輸入:s="egg",
t ="add"
輸出:true
示例 3:輸入:s="foo",
t ="bar"
輸出:false
說明:輸入:s="*****",
t ="title"
輸出:true
你可以假設s和t具有相同的長度。
這個題是典型的字典與對映類的題目,思路較為簡單,但需要注意由於字典值並不一定是唯一的,因此需要雙向的對映來判斷,**如下:
class solution:
def isisomorphic(self, s: str, t: str) -> bool:
return self.judge(s,t) and self.judge(t,s)
def judge(self, s, t):
dict = {}
for i in range(len(s)):
if s[i] not in dict:
dict[s[i]] = t[i]
elif dict[s[i]] != t[i]:
return false
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 輸...
leetcode 205 同構字串
給定兩個字串 s 和 t,判斷它們是否是同構的 如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸出 true示例 2 輸入 s f...