題目
給定兩個字串 s 和 t,判斷它們是否是同構的。
如果 s 中的字元可以被替換得到 t ,那麼這兩個字串是同構的。
所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。
示例 1:
輸入: s = 「egg」, t = 「add」
輸出: true
示例 2:
輸入: s = 「foo」, t = 「bar」
輸出: false
示例 3:
輸入: s = 「*****」, t = 「title」
輸出: true
說明:你可以假設 s 和 t 具有相同的長度。
思路
1、雜湊對映。用兩個雜湊對映代表兩個字串s和t,判斷對映後的是否相等。
實現方法
一、雜湊對映
class solution ; //s到t的對映
int m2[256]=; //t到s的對映
for(int i=0;ireturn true;
}};
205 字串同構
給定兩個字串s 和t 判斷它們是否是同構的。如果s 中的字元可以被替換得到t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。思路 首先 s中的字元對映應該是一對一的,即每個字元只能對應一種對映,另外t也只允許...
205 同構字串
一開始寫的是用兩個字典,將兩個字串的不同元素作為鍵,值是乙個列表,儲存該字串中等於當前鍵的索引,如abcccdd字串的字典為 然後將兩個字典的values 取出進行比較。class solution def isisomorphic self,s str,t str bool dic1,dic2 s...
205 同構字串
給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸出 true 示例 2 輸入 s ...