본문 바로가기
코딩테스트

[프로그래머스>코딩테스트입문] 중앙값 구하기

by moo-ti 2024. 7. 19.
반응형

문제 설명
중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 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) {
        Arrays.sort(array);
        return array[(array.length/2)];
    }
}

 

제일 먼저 오름차순으로 배열을 정렬하고 배열의 가운데 값은 나누기 2 기 때문에 배열의 길이 나누기 2를 했다.

 

다른사람들의 풀이를 보니 비슷하게 풀었고, 연산 속도를 조금 빠르게 하기 위해 시프트 연산을 한 풀이가 상단에 있었다.

시프트 연산과 진법변환은 잘 몰라서 따로 공부를 더 해야할 것 같다.

 

 

 

반응형

'코딩테스트' 카테고리의 다른 글

[프로그래머스>코딩테스트 입문] 짝수는 싫어  (1) 2024.07.19