문제 설명
중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
제한사항
- array의 길이는 홀수입니다.
- 0 < array의 길이 < 100
- -1,000 < array의 원소 < 1,000
입출력 예
array | result |
[1,2,7,10,11] | 7 |
[9,-1,0] | 0 |
입출력 예 설명
입출력 예 #1
- 본문과 동일합니다.
입출력 예 #2
- 9, -1, 0을 오름차순 정렬하면 -1, 0, 9이고 가장 중앙에 위치하는 값은 0입니다.
문제 해결
import java.util.Arrays;
class Solution {
public int solution(int[] array) {
//풀이1
// for (int i = 0; i < array.length; i++) {
// for (int j = i+1; j < array.length; j++) {
// if(array[i] > array[j]) {
// int temp = array[i];
// array[i] = array[j];
// array[j] = temp;
// }
// }
// }
//풀이2
Arrays.sort(array);
int mid = array.length / 2;
return array[mid];
}
}
>> sort를 사용하면 훨씬 더 쉽고 가독성이 좋게 풀 수 있다
'JAVA > Algorithm' 카테고리의 다른 글
[프로그래머스/입문] Lv.0 최빈값 구하기, 자바(Java) (0) | 2023.09.05 |
---|---|
[프로그래머스/입문] Lv.0 배열 두 배 만들기, 자바(Java) (0) | 2023.08.31 |
[프로그래머스/입문] Lv.0 나머지 구하기, 자바(Java) (0) | 2023.08.31 |
[프로그래머스/입문] Lv.0 분수의 덧셈, 자바(Java) (0) | 2023.08.31 |
[프로그래머스/입문] Lv.0 숫자 비교하기, 자바(Java) (0) | 2023.08.31 |