[Algorithm] 중복문자제거

19·2022년 10월 14일
0

Algorithm

목록 보기
17/28
post-custom-banner

중복문자제거

설명

소문자로 된 한개의 문자열이 입력되면 중복된 문자를 제거하고 출력하는 프로그램을 작성하세요.
중복이 제거된 문자열의 각 문자는 원래 문자열의 순서를 유지합니다.

입력

첫 줄에 문자열이 입력됩니다. 문자열의 길이는 100을 넘지 않는다.

출력

첫 줄에 중복문자가 제거된 문자열을 출력합니다.

예시 입력 1

ksekkset

예시 출력 1

kset



해결

public class StringEx_6 {
    public String solution(String str) {
        String answer="";
        for (int i=0; i<str.length(); i++) {
//            System.out.println(str.charAt(i)+" "+i+ " "+str.indexOf(str.charAt(i)));
            // charAt을 통해 도출되는 문자가 최초로 등장하는거라면 true
            if (str.indexOf(str.charAt(i)) == i) {
                answer += str.charAt(i);
            }
        }
        return answer;
    }

    public static void main(String[] args) throws IOException {
        StringEx_6 T = new StringEx_6();
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String input = br.readLine();
        System.out.println(T.solution(input));
    }
}
  • 해당 문자의 인덱스를 반환하는 indexOf()와 charAt()을 사용해 풀 수 있는 문제였다.

indexOf()를 제대로 익혀볼 수 있는 문제였다.
문자열 함수를 제대로 알아야겠다는 마음이 들게 한 문제.. 어려웠다.

profile
하나씩 차근차근
post-custom-banner

0개의 댓글