码迷,mamicode.com
首页 > 其他好文 > 详细

[LC] 1002. Find Common Characters

时间:2020-01-18 13:04:21      阅读:99      评论:0      收藏:0      [点我收藏+]

标签:answer   public   +=   lis   from   int   curd   clu   ring   

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

标签:answer   public   +=   lis   from   int   curd   clu   ring   

原文地址:https://www.cnblogs.com/xuanlu/p/12208573.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!