Instagram
youtube
Facebook
Twitter

Uncommon Words from Two Sentences LeetCode Solution

A sentence is a string of single-space separated words where each word consists only of lowercase letters.

A word is uncommon if it appears exactly once in one of the sentences, and does not appear in the other sentence.

Given two sentences s1 and s2, return a list of all the uncommon words. You may return the answer in any order.

In this lesson, we have solved the Uncommon Words from Two Sentences problem of LeetCode.

Example 1:

Input: s1 = "this apple is sweet", s2 = "this apple is sour"
Output: ["sweet","sour"]

Example 2:

Input: s1 = "apple apple", s2 = "banana"
Output: ["banana"]

Constraints:

  • 1 <= s1.length, s2.length <= 200

  • s1 and s2 consist of lowercase English letters and spaces.

  • s1 and s2 do not have leading or trailing spaces.

  • All the words in s1 and s2 are separated by a single space.

Solution:

class Solution(object):
    def uncommonFromSentences(self, s1, s2):
        """
        :type s1: str
        :type s2: str
        :rtype: List[str]
        """

        words = s1.split() + s2.split()
        word_count = {}
        
        for word in words:
            if word in word_count:
                word_count[word] += 1
            else:
                word_count[word] = 1
        
        uncommon_words = [word for word in word_count if word_count[word] == 1]
        return uncommon_words