import java.util.*;
class Solution {
    public String solution(String myString) {
        Map<Character, List<Integer>> charAndIndeies = new HashMap<>();
        
        int index = 0;
        for(char c : myString.toCharArray()){
            charAndIndeies.putIfAbsent(c, new ArrayList<>());
            charAndIndeies.get(c).add(index++);
        }
        
        for(Map.Entry<Character,List<Integer>> entrySet : charAndIndeies.entrySet()){
            int firstIndex = myString.indexOf(String.valueOf(entrySet.getKey()));
            myString = myString.replaceAll(String.valueOf(entrySet.getKey()), "-");
            char[] chars = myString.toCharArray();
            chars[firstIndex] = entrySet.getKey();
            myString = new String(chars);
        }
        
        return myString.replaceAll("-","");
    }
}
import java.util.HashSet;
import java.util.Set;

public class Solution {
    public String solution(String myString) {
        Set<Character> used = new HashSet<>();

        StringBuilder builder = new StringBuilder();
        for (char c : myString.toCharArray()) {
            if (used.contains(c)) continue;
            used.add(c);
            builder.append(c);
        }

        return builder.toString();
    }
}