Isomorphic Strings

来源:互联网 发布:端口镜像配置 编辑:程序博客网 时间:2024/05/24 00:01
bool isIsomorphic(char* s, char* t) {    char charArrayS[256]={0};    char charArrayT[256]={0};    int i=0;    while(s[i]){        if(charArrayS[s[i]]==0&&charArrayT[t[i]]==0){            charArrayS[s[i]]=t[i];            charArrayT[t[i]]=s[i];        }else {            if(charArrayS[s[i]]!=t[i]||charArrayT[t[i]]!=s[i]){                return false;            }        }        i++;    }    return true;}

这边相当于我从s读一个新字母 然后把这个字母映射成另外一个字母(t中的)
如果是一个已经读过的字母 就比较这次s的是不是和上次一样
就ok
本来想只用一个数组 然而不行
for example
ab // aa a和b都可以映射成 a 这样 就比较不了了
所以两边都弄 一个数组 这样应该可以保证两边一对一 (吧?)

0 0