代码随想录算法训练营day5(哈希表)

华子目录

  • 有效的字母异位词
    • 思路

有效的字母异位词

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

代码随想录算法训练营day5(哈希表)_第1张图片

思路

  • 使用哈希表,这里哈希表使用数组
  • 申请一个26空间大小的数组
  • 遍历第一个字符串,记录每个字符出现的次数+1
  • 遍历第二个字符串,每遍历一个字符数组对应位置-1
  • 遍历数组,如果数组中有不为0位置,则可以判断不是字母异位词
class Solution:
    def isAnagram(self, s: str, t: str) -> bool:
        arr = [0]*26
        for i in range(len(s)):
            arr[ord(s[i])-ord('a')]+=1
        for i in range(len(t)):
            arr[ord(t[i])-ord('a')]-=1
        for i in arr:
            if i != 0:
                return False
        return True

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