링크
https://school.programmers.co.kr/learn/courses/30/lessons/12939
1. 풀이
풀이과정은 코드안에 주석으로 처리하였음.
중요한건 문자열로 Arrays.sort() 를 할게아니고 숫자로 꼭 바꾼 후에 해야된다.
왜냐하면, "1 2 3 4" 같은 테스트케이스는 괜찮은데 "-1 -2 -3 -4" 일 경우에 문자면 그대로 정렬을 해도 "-1 -2 -3 -4"가 출력되기때문이다. 우리가 원하는건 "-4 -3 -2 -1" 이 되어야한다.
2. 코드
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
// s 문자열을 split 으로 짤라서 문자 배열에 담음.
String[] strArr = s.split(" ");
// int형으로 값을 sort 해야하기때문에 숫자 배열을 생성함.
Integer[] intArr = new Integer[strArr.length];
// strArr 에 담긴 값을 intArr에 int형으로 넣어줌.
for(int i=0; i<strArr.length; i++){
intArr[i] = Integer.parseInt(strArr[i]);
}
// 작은숫자부터 큰숫자 순으로 정렬해준다.
Arrays.sort(intArr);
// 가장큰숫자는 맨뒤에있음.
int max = intArr[intArr.length-1];
// 가장작은수는 첫번째에있음.
int min = intArr[0];
answer += min + " " + max;
return answer;
}
}
그리고 별생각없이 코드를 만들었는데 Integer[] intArr = new Integer[strArr.length]; 를 int[] intArr = new int[strArr.length]; 로 했어야했다. 그래야 메모리 효율이 더 좋다.
'프로그래머스 코테 > 프로그래머스 Lv. 2' 카테고리의 다른 글
[프로그래머스 : Java] 최솟값 만들기 (0) | 2023.09.01 |
---|---|
[프로그래머스 : Java] 피보나치 수 (피보나치 수열의 규칙) (0) | 2023.07.25 |
[프로그래머스 : Java] 올바른 괄호 (스택/큐) (0) | 2023.07.13 |
[프로그래머스 : Java] JadenCase 문자열 만들기 (0) | 2023.06.21 |