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

중복된 문자 제거

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

문제 설명
문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요.

제한사항
1 ≤ my_string ≤ 110
my_string은 대문자, 소문자, 공백으로 구성되어 있습니다.
대문자와 소문자를 구분합니다.
공백(" ")도 하나의 문자로 구분합니다.
중복된 문자 중 가장 앞에 있는 문자를 남깁니다.


입출력 예
my_string result
"people" "peol"
"We are the world" "We arthwold"


import java.util.Set;
import java.util.LinkedHashSet;
import java.util.stream.Collectors;

class Solution {
    public String solution(String my_string) {
        String answer = "";
        Set<Character> set = new LinkedHashSet<>();
        
        for(char c : my_string.toCharArray()) {
            set.add(c);
        }
        
        answer = set.stream()
            .map(String::valueOf)
            .collect(Collectors.joining());
        
        return answer;
    }
}


gpt로 풀었다.

부끄럽지만 오늘 처음으로 Set, LinkedHashSet을 써 봤다.

 

어려운 문제가 아니었다.

이제 Set 같은 걸 쓰기 시작하는 도입부 정도였다.

 

처음으로, 추천할 만한 코드를 고르지 못 하겠다.

거의 모든 코드가 한 번 볼 만한 가치를 가지고 있다.

 

이 문제 자체도, 이 문제 풀이도 추천한다.

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

날짜 비교하기  (0) 2024.04.19
이차원 배열 대각선 순회하기  (0) 2024.04.19
세로 읽기  (0) 2024.04.18
369게임  (0) 2024.04.18
합성수 찾기  (0) 2024.04.18