leetcode 242 有效的字母异位词

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。

例如,
s = "anagram",t = "nagaram",返回 true
s = "rat",t = "car",返回 false

注意:
假定字符串只包含小写字母。

提升难度:

输入的字符串包含 unicode 字符怎么办?你能能否调整你的解法来适应这种情况?

class Solution(object):
    def isAnagram(self, s, t):
        """
        :type s: str
        :type t: str
        :rtype: bool
        """
        lens = len(s)  
        lent = len(t)  
        if lens != lent:   
            return False  
        flag = {}  
        for p in s:  
            if p in flag:  
                flag[p] += 1  
            else:  
                flag[p] = 1  
        print flag  
        for p in t:  
            if p not in flag:   
                return False  
            elif flag[p] == 0:  
                return False  
            flag[p] -= 1  
        return True  

你可能感兴趣的:(leetcode)