1. 문제 설명
2. 나의 풀이
import java.util.ArrayList;
import java.util.List;
class Solution {
public String solution(String my_string) {
String answer = "";
List<String> list = new ArrayList<String>();
for(int i = 0; i < my_string.length(); i++)
{
if(!list.contains(my_string.split("")[i]))
{
list.add(my_string.split("")[i]);
}
}
for(int i = 0; i < list.size(); i++)
{
answer += list.get(i);
}
return answer;
}
}
만능 list..
3. 다른 사람의 풀이
풀이 1 . Set 을 이용한 풀이
import java.util.*;
class Solution {
public String solution(String my_string) {
String[] answer = my_string.split("");
Set<String> set = new LinkedHashSet<String>(Arrays.asList(answer));
return String.join("", set);
}
}
중복을 허용하지 않는 Set 의 특성을 이용하여 풀이
class Solution {
public String solution(String my_string) {
String answer = "";
for(int i=0; i<my_string.length(); i++){
//my_string.indexOf(my_string.charAt(i));
if(i==my_string.indexOf(my_string.charAt(i)))
answer+=my_string.charAt(i);
}
return answer;
}
}
indexOf는 앞 인덱스를 우선으로 return하여 뒤에 오는 중복값들은 무시하기 때문에 이렇게 풀 수 있다고 한다.
'코테 > java' 카테고리의 다른 글
[프로그래머스][java] lv 1 부족한 금액 계산하기 (0) | 2025.01.09 |
---|---|
lv 1 정수 내림차순으로 배치하기 (2) | 2024.12.20 |
[프로그래머스][java] lv 0 문자열 정렬하기 (1) (0) | 2024.11.28 |
[프로그래머스][java] lv 0 주사위의 개수 (0) | 2024.11.27 |
[프로그래머스][java] lv 0 공 던지기 (0) | 2024.11.23 |