Python教程

0242-leetcode算法实现之有效字母异位词-valid-anagram-python&golang实现

本文主要是介绍0242-leetcode算法实现之有效字母异位词-valid-anagram-python&golang实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

# 242.有效字母异位词

  • https://leetcode-cn.com/problems/valid-anagram

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

注意:若s 和 t中每个字符出现的次数都相同,则称s 和 t互为字母异位词。

示例1:
输入: s = "anagram", t = "nagaram"
输出: true

示例 2:
输入: s = "rat", t = "car"
输出: false

链接:https://leetcode-cn.com/problems/valid-anagram

python

class Solution:
    # 哈希法
    def isAnagram(self, s: str, t: str) -> bool:
        if len(s) != len(t):
            return False

        records  = [0] * 26
        n = len(s)
        for i in range(n):
            records[ord(s[i]) - ord('a')] += 1
        print(records)
        for i in range(n):
            records[ord(t[i]) - ord('a')] -= 1

        for i in range(26):
            if records[i] != 0:
                return False

        return True

if __name__ == "__main__":
    s = "handle"
    t = ""
    t1 = "and"
    t2 = "andhle"

    test = Solution()
    res = test.isAnagram(s, t)
    print(res) # False
    res = test.isAnagram(s, t1)
    print(res) # False
    res = test.isAnagram(s, t2)
    print(res) # True
这篇关于0242-leetcode算法实现之有效字母异位词-valid-anagram-python&golang实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!