문제
나의 생각
숫자인 값을 따로 분리해서 다시 배열에 집어 넣음 -> Arrays.sort 함수를 이용하여 자동 정렬.
나의 답안
public static int[] solution(String s) {
String r = "";
for (int i = 0 ; i < s.length(); i++){
if(s.charAt(i) >= 48 && s.charAt(i) <= 57){
r += s.charAt(i);
}
}
int[] answer = new int[r.length()];
for (int i = 0 ; i < r.length(); i ++) {
answer[i] = r.charAt(i) - 48;
}
Arrays.sort(answer);
System.out.println(Arrays.toString(answer));
return answer;
}
다른 답안
기존에 있는 문자들을 replaceAll을 통해 빈문자열로 변경 시키면 첫번째 for문이 필요가 없어진다. 이러한 생각의 전환점을 자주 늘려줘야 할 듯하다.
import java.util.*;
class Solution {
public int[] solution(String my_string) {
my_string = my_string.replaceAll("[a-z]","");
int[] answer = new int[my_string.length()];
for(int i =0; i<my_string.length(); i++){
answer[i] = my_string.charAt(i) - '0';
}
Arrays.sort(answer);
return answer;
}
}
'Programmers 문제풀이 > Lv.0' 카테고리의 다른 글
n의 배수 고르기 (0) | 2023.02.27 |
---|---|
직각삼각형 출력하기 (0) | 2023.02.27 |
가위 바위 보 (0) | 2023.02.26 |
대문자와 소문자 (0) | 2023.02.26 |
암호 해독 (0) | 2023.02.26 |