문제
풀이
import java.util.*;
class Solution {
public int solution(String[] strArr) {
Map<Integer, Integer> countMap = new HashMap<>();
for (String str : strArr) {
int length = str.length();
countMap.put(length, countMap.getOrDefault(length, 0) + 1);
}
int maxCount = 0;
for (int count : countMap.values()) {
maxCount = Math.max(maxCount, count);
}
return maxCount;
}
}
import java.util.*;
import java.util.stream.Collectors;
class Solution {
public int solution(String[] strArr) {
return Arrays.stream(strArr)
.collect(Collectors.groupingBy(String::length)).values()
.stream()
.max(Comparator.comparingInt(List::size))
.orElse(Collections.emptyList())
.size();
}
}
- Collectors.groupingBy()
- Comparator.comparingInt()
출처
https://school.programmers.co.kr/learn/courses/30/lessons/181855
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers] Lv.0 / 뒤에서 5등까지 / Java (0) | 2024.02.27 |
---|---|
[Programmers] Lv.0 / 배열의 길이에 따라 다른 연산하기 / Java (0) | 2024.02.27 |
[Programmers] Lv.0 / 배열 비교하기 / Java (0) | 2024.02.15 |
[Programmers] Lv.0 / 배열의 길이를 2의 거듭제곱으로 만들기 / Java (0) | 2024.02.14 |
[Programmers] Lv.0 / 무작위로 K개의 수 뽑기 / Java (0) | 2024.02.07 |
댓글