题目:
算法思想:通过map来判断是否映射一致,需要注意的是要开两个map,举个例子,s="ab",t="aa"和s="aa",t="ab",对着这个例子,如果只有一个map只能满足其中一个情况,所以分别判断s和t的映射是否与对方一致。
代码:
bool isIsomorphic(string s, string t) {
int len = s.length();
map<char,char> s_map;
map<char,char> t_map;
for(int i = 0;i < len;i++)
{
if(s_map.find(s[i]) != s_map.end() && s_map[s[i]] != t[i])
return false;
if(t_map.find(t[i]) != t_map.end() && t_map[t[i]] != s[i])
return false;
s_map[s[i]] = t[i];
t_map[t[i]] = s[i];
}
return true;
}