알고리즘 자료구조/프로그래머스
[프로그래머스] 한 번만 등장한 문자
yes_truly
2023. 7. 24. 23:20
728x90
🖊️문제
문자열 s가 매개변수로 주어집니다. s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return하도록 solution함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.
🖊️문제풀이
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
char[] input = s.toCharArray();
Hashtable<Character,Integer> hash = new Hashtable<>();
for(char c: input) {
hash.put(c, hash.getOrDefault(c, 0)+1);
}
List<Character> list = new ArrayList<>(hash.keySet());
list.sort(null);
for(char key : list) {
if(hash.get(key)==1) {
answer+=key;
}
}
return answer;
}
}
HashTable에 key에는 문자열에 들어있는 문자를 하나씩 떼어서 저장하고, value에는 기본값으로 1을 저장하고 동일 문자가 있을 경우 1을 증가시켜 저장시킨다.
value값이 1인 key들만 list에 저장시키고 sort시킨다음 문자열에 붙여서 문제를 해결했다.
728x90