알고리즘 문제

알고리즘 문제 js 14 - 나누어 떨어지는 숫자 배열

<zinny/> 2022. 1. 18. 01:05
728x90

내가 쓴 코드 

function solution(arr, divisor) {
    var answer = [];    //빈 배열 지정 
    for (let i =0; i <arr.length; i++){   //arr의 길이만큼 반복문 돌리기 
         if(arr[i] % divisor == 0){    
             answer.push (arr[i]);      //배열에 push 하기 
         }
    } if (answer.length == 0 ) {      //길이가 0이랑 같으면 
        answer.push(-1)                //-1 푸시하기 
    }
    return answer.sort(function(a, b)  {  //value 기준으로 오름차순 정렬 
  if(a > b) return 1;
  if(a === b) return 0;
  if(a < b) return -1;
});
}
answer.sort(function(a, b) { // 오름차순
    return a < b ? -1 : a > b ? 1 : 0;
});


answer.sort(function(a, b) { // 내림차순
    return a > b ? -1 : a < b ? 1 : 0;
});

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

sort() 메서드는 배열의 요소를 적절한 위치에 정렬한 후 그 배열을 반환합니다.

 


function solution(arr, divisor) {
    var answer = arr.filter(v => v%divisor == 0);
    return answer.length == 0 ? [-1] : answer.sort((a,b) => a-b);  // sort((a,b) => a-b)는 오름 차순을 뜻함 
}

화살표 함수를 통한 코드 진행 

728x90