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

class Anagram(object):
    '''
    给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。
    '''
    def isAnagram(self,s1,s2):
        if s1==None or s2==None or s1=="" or s2=="":
            return False
        if len(s1)!=len(s2):
            return False
        else:
            s1_dict={}
            s2_dict={}
            for i in range(len(s1)):
                if s1_dict.get(s1[i])==None:
                    s1_dict[s1[i]]=1
                else:
                    s1_dict[s1[i]]=s1_dict.get(s1[i])+1
                if s2_dict.get(s2[i])==None:
                    s2_dict[s2[i]]=1
                else:
                    s2_dict[s2[i]]=s2_dict.get(s2[i])+1
        for key in s1_dict.keys():
            if s1_dict.get(key)!=s2_dict.get(key):
                return False
        return True


if __name__=="__main__":

    a = "asdaaa"

    b = "aaaasd"
    c= Anagram()
    print(c.isAnagram(a,b))

  

posted @ 2019-10-18 16:27  志不坚者智不达  阅读(1095)  评论(0编辑  收藏  举报