문제 설명
- 중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
제한사항
- array의 길이는 홀수입니다.
- 0 < array의 길이 < 100
- -1,000 < array의 원소 < 1,000
function solution(array) {
let newArray = [];
// 1-4. 1-1~1-3 을 배열길이 만큼 반복
let k=0;
while(k < array.length) {
let minNumber = 1000;
// 1-1. 배열 요소중에 가장 작은값 찾기
let i = 0;
while(i< array.length) {
if(minNumber > array[i]) {
minNumber = array[i];
}
i++;
}
// 이 아래로 minNumber == -1
// 1-2. 찾은걸 새로운배열에 넣기
newArray.push(minNumber);
// 1-3. 넣은걸 기존배열에서 제거하기
let j=0;
while(j< array.length) {
if(minNumber === array[j]) {
array[j] = 1000;
break; // minNumber을 기존배열에서 찾으면 뒤는 볼 필요도없음.
}
j++;
}
k++;
}
console.log('array:', array);
console.log(newArray);
// 2. 배열 중앙값 찾기
return newArray[Math.floor(newArray.length/2)];
}
// [9, -1, 0]
// 1. 배열 정렬하기
// 1-1. 배열 요소중에 가장 작은값 찾기
// 1-2. 찾은걸 새로운배열에 넣기
// 1-3. 넣은걸 기존배열에서 제거하기
// 1-4. 1-1~1-3 을 배열길이 만큼 반복
// 2. 배열 중앙값 찾기