프로그래머스 - 한 번만 등장한 문자

JJJ·2023년 4월 22일
0

한 번만 등장한 문자

문제 설명

문자열 s가 매개변수로 주어집니다. s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.
제한사항
0 < s의 길이 < 1,000
s는 소문자로만 이루어져 있습니다.

풀이

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

풀이방법
1)splir()
:(특정문자)를 기준으로 문자열을 나누어 배열(Array)에 저장하여 반환 즉, String -> (String)Array
2)sort()
:Arrays클래스의 메서드로 배열을 정렬(오름차순)
3)int cnt활용
:두번째 for문을 통해 배열의 요소가 다음 요소와 같은경우 cnt를 증가시킨다.
:이때 if문을 통해 cnt가 1인경우 같은문자가 자기자신이라는 뜻이기 때문에 해당 요소를 반환
:두번째 for문을 수행하고나면 cnt를 0으로 초기화한다
:cnt가 1이 나오지 않을 경우(=한 번만 등장하는 수가 없는경우) 초기값 asnwer=""(빈문자)를 반환

profile
Think Talk Act

0개의 댓글