leedcode-找不同

自己写的,哈希表,easy
class Solution:
    def findTheDifference(self, s: str, t: str) -> str:
        # 创建一个空字典,用于存储字符出现的次数
        mydict = {}
        
        # 遍历字符串s,统计每个字符出现的次数
        for i in s:
            if not mydict.get(i):
                mydict[i] = 1
            else:
                mydict[i] += 1
        
        # 遍历字符串t,查找出现次数不同的字符
        for j in t:
            if not mydict.get(j):
                return j
            else:
                mydict[j] -= 1
        
        # 遍历字典,找到出现次数为1的字符,即为额外添加的字符
        for k in mydict:
            if mydict.get(k) == 1:
                return k

 gpt优化过的:

class Solution:
    def findTheDifference(self, s: str, t: str) -> str:
        # 创建一个空字典,用于存储字符出现的次数
        mydict = {}
        
        # 统计字符串s中每个字符出现的次数
        for char in s:
            mydict[char] = mydict.get(char, 0) + 1
        
        # 遍历字符串t,查找出现次数不同的字符
        for char in t:
            if char not in mydict or mydict[char] == 0:
                return char
            else:
                mydict[char] -= 1
        
        return ""

 

posted @ 2024-04-17 17:52  Junior_bond  阅读(11)  评论(0)    收藏  举报