min

프로그래머스 K번째 수 자바스크립트 본문

알고리즘

프로그래머스 K번째 수 자바스크립트

minprogramming 2023. 6. 21. 12:40

<문제>

https://school.programmers.co.kr/learn/courses/30/lessons/42748

 

프로그래머스

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

programmers.co.kr

<나의 풀이>

function solution(array, commands) {
    var answer = [];
    for(let i = 0; i < commands.length; i++) {
        arr = array.slice(commands[i][0]-1,commands[i][1])
        arr.sort((a,b)=>a-b)
        answer.push(arr[commands[i][2] - 1])
    }
    return answer;
}

<다른 사람의 풀이>

function solution(array, commands) {
    return commands.map(command => {
        const [sPosition, ePosition, position] = command
        const newArray = array
            .filter((value, fIndex) => fIndex >= sPosition - 1 && fIndex <= ePosition - 1)
            .sort((a,b) => a - b)    

        return newArray[position - 1]
    })
}

<궁금중>

비구조화 할당

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

 

구조 분해 할당 - JavaScript | MDN

구조 분해 할당 구문은 배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 JavaScript 표현식입니다.

developer.mozilla.org