[프로그래머스] Lv.0 한 번만 등장한 문자.java

김엄지·2024년 4월 30일

알고리즘

목록 보기
81/90

1. 문제

문제 설명

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

제한사항

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

입출력의 예

2. 풀이 과정

  1. 입력된 문자열 s을 split를 이용하여 하나씩 나눠 배열 str에 저장한다.
  2. Arrays.sort() 메서드로 배열의 원소들을 정렬한다.
  3. 이중 for문을 사용하여 중복되는 문자들을 세어준다.
  4. 문자의 개수를 세기 위해 int 변수 count를 선언한다.
  5. 배열의 i번째 문자가 j번째 문자와 같다면, count를 1씩 증가시킨다.
  6. 문자의 개수가 1개일 때, answer에 해당 위치에 있는 문자를 담아 반환한다.

3. 최종 코드

import java.util.Arrays;

class Solution {
    public String solution(String s) {
        String answer = "";
        String[] str = s.split("");
        
        Arrays.sort(str);
        
        for(int i = 0; i < str.length; i++) {
            int count = 0;
            for(int j = 0; j < str.length; j++) {
                if(str[i].equals(str[j])) {
                    count++;
                }
            }
            if(count == 1) {
                answer += str[i];
            }
        }
        return answer;
    }
}

4. 공부 내용

Arrays.sort() 메서드

Arrays.sort() 메서드를 사용하여 문자열 배열을 오름차순으로 정렬

이중 반복문

이중 반복문을 사용하여 모든 문자열을 비교

profile
나만의 무언가를 가진 프로그래머가 되자

0개의 댓글