※ 문제 풀기에 앞서...
: 문제 풀기에 방법이 생각나지 않아 검색을 하여 풀었습니다. 해당 문제를 풀기 위한 방법으로 여러가지가 나왔는데 설명해드리겠습니다.
※ Java에서 String은 한번 생성 되면 내용을 바꿀 수 없다.
1. StringBuilder 활용
: String으로 되어있는 문자열을 합칠 수 있는 기능.
ex) String a = "안" + "녕" --> "안녕" 출력
-- 해당 방식으로 하면 이전 문자열은 쓰레기값으로 처리되어 문자가 많아질수록 메모리 낭비가 심해진다..
ex) StringBuilder sb = new StringBuilder()
--> sb.append("안") sb.append("녕")
--> sb.toString() : "안녕"
새로운 객체를 생성하는 것이 아닌 append로 뒤에 추가해주는 것이라 메모리 관리에 더 효율적이다..
문제 설명
: 문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요.
제한 사항
: 1 ≤ my_string ≤ 110
: my_string은 대문자, 소문자, 공백으로 구성되어 있습니다.
: 대문자와 소문자를 구분합니다.
: 공백(" ")도 하나의 문자로 구분합니다.
: 중복된 문자 중 가장 앞에 있는 문자를 남깁니다.
입출력 예
입출력 예 설명
입출력 예 #1
"people"에서 중복된 문자 "p"와 "e"을 제거한 "peol"을 return합니다.
입출력 예 #2
"We are the world"에서 중복된 문자 "e", " ", "r" 들을 제거한 "We arthwold"을 return합니다.
나의 풀이
※ StringBuilder sb = new StringBuilder()
class Solution {
public String solution(String my_string) {
String answer = "";
StringBuilder result = new StringBuilder();
for(int i=0; i<my_string.length(); i++){
char c = my_string.charAt(i);
if(result.indexOf(String.valueOf(c)) == -1){
result.append(c);
}
}
return result.toString();
}
}
# 게을렀던 나 자신 반성하며 다시 하나하나 나아가보자..늦은 나이..신경쓰지말고 나의 발전에 노력하고 힘을 쓰자 화이팅!
'JAVA 공부' 카테고리의 다른 글
[ 프로그래머스 - Java ] 모스부호(1 (1) | 2024.11.14 |
---|---|
[ 프로그래머스 - Java ] K의 개수 (0) | 2024.11.13 |
[ 프로그래머스 - Java ] 2차원으로 만들기. (0) | 2024.11.12 |
[ 프로그래머스 - Java ] 약수 구하기. (0) | 2024.11.07 |
[ 프로그래머스 - Java ] 가장 큰 수 찾기. (0) | 2024.11.05 |