문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
문자열 배열 words가 주어졌을 때, 모든 문자열에 나타나는 모든 문자(중복 포함)의 배열을 반환해라. 정렬되지 않아도 된다.
#1
Input: words = ["bella", "label", "roller"]
Output: ["e", "l", "l"]
#2
Input: words = ["cool", "lock", "cook"]
Output: ["c", "o"]
class Solution {
public List<String> commonChars(String[] words) {
List<String> result = new ArrayList<>();
for(char c = 'a'; c <= 'z'; c++){
int min = Integer.MAX_VALUE;
for(String word : words){
int count = 0;
for(char w : word.toCharArray()){
if(w == c){
count++;
}
}
min = Math.min(min, count);
if(min == 0){
break;
}
}
for(int i = 0; i < min; i++){
result.add(String.valueOf(c));
}
}
return result;
}
}