본문 바로가기
Algorithm/Programmers

[Programmers] Lv.0 / 문자열 묶기 / Java

by unknownomad 2024. 2. 27.

문제

 

풀이

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

댓글