레벨 : 0
문자열 s가 매개변수로 주어집니다.
s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요.
한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.
package programmers;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
public class 한번만등장한문자 {
public static void main(String[] args) {
// result = eho
String s = "hello";
System.out.println(solution(s));
}
/**
* @date 2023-03-27
*
* 문자열 s가 매개변수로 주어집니다.
* s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요.
* 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.
*
* @param s
* @return
*/
public static String solution(String s) {
String[] array = s.split("");
ArrayList<String> answer = new ArrayList<>();
HashMap<String, Integer> counter = new HashMap<>();
for(String str : array) {
counter.put(str, counter.getOrDefault(str, 0) + 1);
}
for(String key : counter.keySet()) {
if(counter.get(key) == 1) {
answer.add(key);
}
}
Collections.sort(answer);
StringBuilder sb = new StringBuilder();
for(String str : answer) {
sb.append(str);
}
return sb.toString();
}
}