[LC] 1002. Find Common Characters

Posted xuanlu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LC] 1002. Find Common Characters相关的知识,希望对你有一定的参考价值。

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"]


class Solution {
    public List<String> commonChars(String[] A) {
        List<String> res = new ArrayList<>();
        if (A == null || A.length == 0) {
            return res;
        }
        int[] lowerCaseArr = new int[26];
        for (char c: A[0].toCharArray()) {
            lowerCaseArr[c - ‘a‘] += 1;
        }
        for (int i = 1; i < A.length; i++) {
            int[] curDict = new int[26];
            for (char c: A[i].toCharArray()) {
                curDict[c - ‘a‘] += 1;
            }
            for (int j = 0; j < lowerCaseArr.length; j++) {
                lowerCaseArr[j] = Math.min(lowerCaseArr[j], curDict[j]);
            }
        }
        
        for (int i = 0; i < lowerCaseArr.length; i++) {
            while (lowerCaseArr[i] > 0) {
                res.add(Character.toString((char)(i + ‘a‘)));
                lowerCaseArr[i] -= 1;
            }
        }
        return res;
    }
}

 

以上是关于[LC] 1002. Find Common Characters的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode 1002. Find Common Characters

LeetCode --- 1002. Find Common Characters 解题报告

LeetCode --- 1002. Find Common Characters 解题报告

Golang语言LeetCode 1002. Find Common Characters

Leetcode-1002 Find Common Characters(查找常用字符)

LeetCode.1002-寻找共有字符(Find Common Characters)