力扣 205 同构字符串

本题思路就是让两个字符串里的元素相互映射。

先建立map s2t用来s映射t,在建立 map t2s用来t映射s,在映射的过程中如果发现两个map其中之一的key出现过并且value对应不上就false

class Solution {

public:

    bool isIsomorphic(string s, string t) {

        map s2t;

        map t2s;

        int len = s.length();

        for (int i = 0; i < len; ++i) {

            char x = s[i], y = t[i];

            if ((s2t.count(x) && s2t[x] != y) || (t2s.count(y) && t2s[y] != x)) {

                return false;

            }

            s2t[x] = y;

            t2s[y] = x;

        }

        return true;

    }

};

你可能感兴趣的:(leetcode,算法,数据结构)