2023.9.6
本题维护两个映射表map,若发现无法对应则返回false。 代码如下:
class Solution {
public:
bool isIsomorphic(string s, string t) {
unordered_map<char,char> m1;
unordered_map<char,char> m2;
for(int i=0; i<s.size(); i++)
{
//相同字符只能映射到同一字符上 不同字符不能映射在同一个字符上
if(m1.find(s[i]) != m1.end() && m1[s[i]] != t[i]) return false;
if(m2.find(t[i]) != m2.end() && m2[t[i]] != s[i]) return false;
m1[s[i]] = t[i];
m2[t[i]] = s[i];
}
return true;
}
};