프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

<내 풀이>

function solution(array, commands) {
    var answer = [];

    commands.forEach(function(element){
        
        var sliceArr = array.slice(element[0] - 1, element[1]);
        sliceArr.sort((a,b)=>{return a-b});
        
        answer.push(sliceArr[element[2] - 1]);

    });
    
    return answer;
}

 

forEach(callback함수) : 인자로 callback 함수를 넣는다. 인자로 주어진 함수를 배열 요소 각각에 대해 실행하고, undifined를 반환한다.

 

sort(compareFunction) : 인자로 정렬 순서를 정의하는 함수를 넣는다. 생략하면 배열은 각 요소의 문자열 변환에 따라 각 문자의 유니 코드 코드 포인트 값에 따라 정렬된다. 반환값으로 복사본이 만들어지는 것이 아닌, 원래 배열의 정렬된 배열이  반환값이다.

numbers.sort(function(a, b) {
  return a - b;
});
// 오름차순으로 정렬시킨다.

 

slice(begin, end) : 배열을 인덱스 begin 부터 end 앞까지 ,즉 인덱스 end-1까지 잘라낸다. 반환값으로 잘라내 추출한 배열을 반환한다.

반응형

+ Recent posts