Given an array A of strings made only from lowercase letters, return a list of all characters that show up in all strings within the list (including duplicates).  For example, if a character occurs 3 times in all strings but not 4 times, you need to include that character three times in the final answer.

You may return the answer in any order.

Example 1:
Input: ["bella","label","roller"]
Output: ["e","l","l"]

Example 2:
Input: ["cool","lock","cook"]
Output: ["c","o"]

Note:

  • 1 <= A.length <= 100
  • 1 <= A[i].length <= 100
  • A[i][j] is a lowercase letter

Solution in python:

class Solution:
    def commonChars(self, A: List[str]) -> List[str]:
        aset = set(A[0])
        for item in A:
            aset = aset & set(item)

        dicts = []
        for item in A:
            adic = dict()
            for char in item:       
                if char in aset:
                    if char not in adic.keys():
                        adic[char] = 1
                    else:
                        adic[char] += 1
            dicts.append(adic)
        result = []
        for char in aset:
            num = 100
            for item in dicts:
                if item[char] < num:
                    num = item[char]
            for i in range(num):
                result.append(char)

        return result
最后修改日期: 2021年3月1日

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。