47 同構字串

2021-09-01 23:46:44 字數 1120 閱讀 3298

給定兩個字串 s 和 t,判斷它們是否是同構的。

如果 s 中的字元可以被替換得到 t ,那麼這兩個字串是同構的。

所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。

示例 1:

輸入: s = 「egg」, t = 「add」

輸出: true

示例 2:

輸入: s = 「foo」, t = 「bar」

輸出: false

示例 3:

輸入: s = 「*****」, t = 「title」

輸出: true

說明:你可以假設 s 和 t 具有相同的長度。

我的思路,首先想到的就是鍵值對的形式,首先將第乙個字母放進去,然後考慮之後的,每次取出乙個字母考慮的是如果沒有取出key,那麼首先不應該是放進去,而是應該判斷有沒有value,這樣才能完整,因為如果是ab和aa那麼這樣也不會出錯,如果沒有考慮到有沒有value會出錯的

我的**:

class solution else 

hash.put(s.charat(0), t.charat(0));

boolean fa = true;

for (int i = 1; i < s.length(); i++) else

}else }}

return fa;

} }

}

排名較高的**:

class solution 

char chas1 = s.tochararray();

char chas2 = t.tochararray();

int map = new int[512];

for (int i = s.length() - 1; i >= 0; i--)

map[chas1[i]] = map[chas2[i] + 256] = i;

} return true;

}}

之後放進兩個,還能看懂

class solution 

return true;

}}

字串同構

字串同構 題目描述 給定兩個字串 s 和 t 確定它們是否是同構的。兩個字串是同構的如果 s 中的字元可以被替換得到 t。所有出現的字元必須用另乙個字元代替,同時保留字串的順序。沒有兩個字元可以對映到同乙個字元,但乙個字元可以對映到自己。注意事項 你可以假定兩個字串 s 和 t 是一樣長度的.樣例 ...

同構字串

給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸出 true 示例 2 輸入 s ...

同構字串

給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身 示例 1 輸入 s egg t add 輸出 true 示例 2 輸入 s ...