描述
判断两个字符串是否同构
解决
记录每个字符前一次出现的位置,判断即可。注意不要初始化vector为0,因为字符从索引号为0开始遍历的。
class Solution {
public:
bool isIsomorphic(string s, string t) {
int length = s.size();
if (length == 0)
return true;
vector<int> arr0(256, -1), arr1(256, -1);
for (int i = 0; i < length; ++i)
{
if (arr0[s[i]] != arr1[t[i]])
return false;
arr0[s[i]] = i;
arr1[t[i]] = i;
}
return true;
}
};