donnemartin / interactive-coding-challenges

120+ interactive Python coding interview challenges (algorithms and data structures). Includes Anki flashcards.
Other
29.44k stars 4.45k forks source link

issue with str_diff_solution (python) #294

Open withjak opened 3 years ago

withjak commented 3 years ago

` class Solution(object):

def find_diff(self, str1, str2):
    if str1 is None or str2 is None:
        raise TypeError('str1 or str2 cannot be None')
    seen = {}
    for char in str1:
        if char in seen:
            seen[char] += 1
        else:
            seen[char] = 1
    for char in str2:
        try:
            seen[char] -= 1
        except KeyError:
            return char
        if seen[char] < 0:
            return char

    for char, count in seen.items():
        return char

`

Fails for input Solution().find_diff('bbaabbc', 'aabbbb')

Last for loop should be ` for char, count in seen.items():

if count:
    return char

`