기주

[코테] java-중복된 문자 제거하기 본문

알고리즘/코테

[코테] java-중복된 문자 제거하기

기주그지마 2024. 10. 28. 13:01

1.IndexOf()만 이용해서 풀기

str.indexOf()는 매개변수로 char / string 타입 모두 가능

< answer = "" >에 < answer += char / string > 타입 모두 덧붙일 수 있음

Scanner sc = new Scanner(System.in);
String answer = "";

String str = sc.next();

for(int i=0; i<str.length(); i++){
	char ch = str.charAt(i);
    
    //indexOf()는 특정글자의 첫번째 인덱스를 반환
    if(str.indexOf(ch) == i ){ // i번째 글자의 인덱스가 i와 같다면 처음보는 문자이므로 answer에 추가
		answer += ch;
	}
}

System.out.println(answer);

 

 

 

 

 

2.StringBuilder와 indexOf()를 이용해서 풀기

 Scanner sc = new Scanner(System.in);

 String str = sc.next();
 StringBuilder sb = new StringBuilder();

 for(int i=0; i<str.length(); i++){
 	if( sb.indexOf(str.substring(i,i+1)) == -1 ){
    	sb.append(str.substring(i,i+1));
     }
 }
 System.out.println(sb.toString());