본문 바로가기
Coding Test/JavaScript

[Javascript] (프로그래머스 level 0) 특이한 정렬

by Chaedie 2022. 10. 24.
728x90

[Javascript] (프로그래머스 level 0) 특이한 정렬

💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다.

내 풀이

function solution(numlist, n) {
    return numlist.slice().sort((a, b) => {
        distA = Math.abs(a - n);
        distB = Math.abs(b - n);
        if (distA === distB) {
            return b - a;
        } else {
            return distA - distB;   
        }
    });
}

다른 사람 풀이 참고한 풀이

function solution(numlist, n) {
    return numlist.slice().sort((a, b) => Math.abs(n - a) - Math.abs(b - n) || b - a);
}

배운 점, 느낀 점

“두 값이 같으면 b - a 를 리턴한다.”를 || 연산자를 사용해서 표현할 수 있네요. 아주 멋진 풀이네요!

댓글