-
[Java 자바] 프로그래머스 Lv 0 - 문자열 정렬하기 (1)Study/Java 2024. 10. 30. 22:05728x90반응형
목차
1. 문제 설명
728x90문제 설명
문자열 my_string이 매개변수로 주어질 때,
my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요.제한사항
- 1 ≤ my_string의 길이 ≤ 100
- my_string에는 숫자가 한 개 이상 포함되어 있습니다.
- my_string은 영어 소문자 또는 0부터 9까지의 숫자로 이루어져 있습니다.
2. 입출력 예시
입출력 예시
#1
"hi12392"에 있는 숫자 1, 2, 3, 9, 2를 오름차순 정렬한 [1, 2, 2, 3, 9]를 return 합니다.
#2
"p2o4i8gj2"에 있는 숫자 2, 4, 8, 2를 오름차순 정렬한 [2, 2, 4, 8]을 return 합니다.
#3"abcde0"에 있는 숫자 0을 오름차순 정렬한 [0]을 return 합니다.
3. 문제 풀이
반응형문제 풀이
1. numbers 변수를 만들어서 my_string 값에서 숫자를 제외한 모든 값을 없앤 값을 넣어준다.
2. 배열 answer의 길이를 numbers의 글자 수로 정한다.
3. for문을 통해서 배열 answer에 int로 변환한 numbers의 각 문자를 넣는다.
4. Arrays.sort를 이용하여 배열 answer을 오름차순으로 정렬한다.
5. answer를 반환한다.
import java.util.Arrays; class Solution { public int[] solution(String my_string) { String numbers = my_string.replaceAll("[^0-9]",""); int[] answer = new int[numbers.length()]; for(int i=0; i<answer.length; i++){ answer[i] = Integer.parseInt(numbers.substring(i,i+1)); } Arrays.sort(answer); return answer; } }
메모
[^0-9] : 숫자를 제외한 모든 문자
[0-9] : 숫자
substring(beginIndex, endIndex)
: beginIndex 위치에서 시작하여 endIndex 위치까지의 값을 반환한다.
: endIndex가 없으면 beginIndex 위치부터 끝까지 반환한다.
Integer.parseInt(String) : 문자열로 표현된 숫자 String의 값을 int 형으로 변환해 준다.
728x90반응형'Study > Java' 카테고리의 다른 글
[Java 자바] 프로그래머스 Lv 0 - 소인수분해 (1) 2024.10.31 [Java 자바] 프로그래머스 Lv 0 - 숨어있는 숫자의 덧셈 (1) (0) 2024.10.31 [Java 자바] 프로그래머스 Lv 0 - 모음 제거 (1) 2024.10.30 [Java 자바] 프로그래머스 Lv 0 - 팩토리얼 (0) 2024.10.29 [Java 자바] 프로그래머스 Lv 0 - 최댓값 만들기 (1) (0) 2024.10.29