Tuesday, March 12, 2019

LeetCode 205. Isomorphic Strings

'''
Given two strings s and t, determine if they are isomorphic.

Two strings are isomorphic if the characters in s can be replaced to get t.

All occurrences of a character must be replaced with another character while preserving the order of characters. No two characters may map to the same character but a character may map to itself.
'''
class Solution(object):
    def isIsomorphic(self, s, t):
        """
        :type s: str
        :type t: str
        :rtype: bool
        """
        ht1 = {}
        ht2 = {}
        for i in range(len(s)):
            if s[i] not in ht1:
                ht1[s[i]] = t[i]
            elif not ht1[s[i]] == t[i]:
                return False
            if t[i] not in ht2:
                ht2[t[i]] = s[i]
            elif not ht2[t[i]] == s[i]:
                return False
           
        return True

No comments:

Post a Comment