884. 两句话中的不常见单词

简介: 884. 两句话中的不常见单词

题:输入两句话,返回两句话中不常见单词列表。

“不常见单词”指在一句话中只出现一次,且另一句话没有出现。

解:直接按题意,求在一句话中只出现一次,且另一句话没有出现的单词。用Counter()计算次数。

class Solution:
    def uncommonFromSentences(self, s1: str, s2: str) -> List[str]:
        tokens1 = s1.split()
        tokens2 = s2.split()
        ans = []
        cnt1 = Counter(tokens1)
        cnt2 = Counter(tokens2)
        #print(cnt1,cnt2)
        for k, v in cnt1.items():
            if v == 1 and k not in cnt2:
                ans.append(k)
        for k, v in cnt2.items():
            if v == 1 and k not in cnt1:
                ans.append(k)  
        return ans    

简化一下,在一句中出现一次,另一句话不出现,就等价于在s1+s2中总共出现一次。

    def uncommonFromSentences(self, s1: str, s2: str) -> List[str]:
        s = s1+" "+s2
        tokens = s.split()
        ans = []
        cnt = Counter(tokens)
        for k, v in cnt.items():
            if v == 1 :
                ans.append(k)
        return ans 
相关文章
|
1月前
|
算法
算法编程(二十八):重新排列单词间的空格
算法编程(二十八):重新排列单词间的空格
43 0
|
15天前
|
Python
每日一题 2047. 句子中的有效单词数
每日一题 2047. 句子中的有效单词数
|
1月前
【力扣】1832.判断句子是否为全字母句
【力扣】1832.判断句子是否为全字母句
|
11月前
|
C语言
【每日一题】 将一句话单词倒置,标点不倒置
【每日一题】 将一句话单词倒置,标点不倒置
160 0
【每日一题】 将一句话单词倒置,标点不倒置
|
1月前
leetcode-884:两句话中的不常见单词
leetcode-884:两句话中的不常见单词
18 0
|
6月前
|
关系型数据库 Java Android开发
IELTS学习(002) - 单词(自然地理篇)
IELTS学习(002) - 单词(自然地理篇)
54 0
|
自然语言处理 IDE 开发工具
C++常见英语单词总结(1)
C++常见英语单词总结(1)
|
11月前
|
存储 JavaScript IDE
程序员常用英文单词/英语单词/词汇表/变量名称
程序员常用英文单词/英语单词/词汇表/变量名称
192 0
|
存储
Leecode 1160. 拼写单词
Leecode 1160. 拼写单词
44 0
|
算法 前端开发 JavaScript
前端算法-单词字符串反转
前端算法-单词字符串反转