본문 바로가기
코딩테스트 연습

한 번만 등장한 문자

by 신재은👩🏼‍💻 2024. 4. 20.

문제 설명
문자열 s가 매개변수로 주어집니다. s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.

제한사항
0 < s의 길이 < 1,000
s는 소문자로만 이루어져 있습니다.


입출력 예
s result
"abcabcadc" "d"
"abdc" "abcd"
"hello" "eho"


import java.util.*;

class Solution {
    public String solution(String s) {
        Map<Character, Integer> frequency = new HashMap<>();

        for (char c : s.toCharArray()) {
            frequency.put(c, frequency.getOrDefault(c, 0) + 1);
        }

        List<Character> uniqueChars = new ArrayList<>();
        for (Map.Entry<Character, Integer> entry : frequency.entrySet()) {
            if (entry.getValue() == 1) {
                uniqueChars.add(entry.getKey());
            }
        }

        Collections.sort(uniqueChars);

        StringBuilder result = new StringBuilder();
        for (char c : uniqueChars) {
            result.append(c);
        }

        return result.toString();
    }
}


GPT로 풀었다(?).

이제 슬슬 답변이 길어진다.

'코딩테스트 연습' 카테고리의 다른 글

문자열이 몇 번 등장하는지 세기  (0) 2024.04.20
배열의 길이를 2의 거듭제곱으로 만들기  (0) 2024.04.20
가까운 수  (0) 2024.04.20
k의 개수  (0) 2024.04.20
A로 B 만들기  (0) 2024.04.20