算法提高之LeetCode刷题LeetCode Python算法

500. Keyboard Row

2018-07-05  本文已影响0人  fred_33c7

原题地址: https://leetcode.com/problems/keyboard-row/description/
大意:无聊的题目。。给一个list,list的每个元素是一个单词,看看这些单词是不是字母都在键盘的同一行上。

class Solution:
    def findWords(self, words):
        """
        :type words: List[str]
        :rtype: List[str]
        """
        list1 = {'q','w','e','r','t','y','u','i','o','p'}
        list2 = {'a','s','d','f','g','h','j','k','l'}
        list3 = {'z','x','c','v','b','n','m'}
        list = []
        for item in words:
            item2 = item.lower()
            if (set(item2).issubset(list1) or set(item2).issubset(list2) or set(item2).issubset(list3)):
                list.append(item)
        return list

知识点:

set的issubset()方法可以判断一个set是不是另外一个set的子集,注意大小写的问题,把单次全部转化为大写或者小写来判断。

上一篇下一篇

猜你喜欢

热点阅读