C언어

[프로그래머스-C언어] 중앙값 구하기

랏소베어123 2024. 5. 25. 00:06

문제 설명
중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 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

 

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

// array_len은 배열 array의 길이입니다.
int solution(int array[], size_t array_len) {
    //오름차순 버블정렬
    int temp=0;
    for(int i=0;i<array_len;i++)
    {
        for(int j=0;j<array_len-i-1;j++)
        {
            if(array[j]>array[j+1]){
                temp=array[j];
                array[j]=array[j+1];
                array[j+1]=temp;
            }
        }
    }
 int middleNumber= array_len/2+1;
    int answer= array[middleNumber-1];
    return answer;

- 배열을 오름차순으로 정렬하는방법을 찾는게 힘들었다.

버블정렬은 그냥 외우자!!