inAscOrder.js (7kyu 43)

Codewars 알고리즘 풀이


Problem

  • Your task is to determine whether the numbers are in ascending order.
    • 숫자가 오름차순인지 확인한다.


Solution 01

function inAscOrder(arr) {
  for (let i = 0; i < arr.length - 1; i++) {
    if (arr[i] > arr[i + 1]) {
      return false;
    }
  }
  return true;
}

inAscOrder([1, 2, 3, 4]);  // true
inAscOrder([4, 3, 2, 1]);  // false
inAscOrder([1, 3, 2, 4]);  // false


Solution 02

function inAscOrder(arr) {
  const str1 = arr.join('');
  const str2 = arr.sort((a, b) => a - b).join('');
  
  if (str1 === str2) {
    return true;
  } else {
    return false;
  }
}

inAscOrder([1, 2, 3, 4]);  // true
inAscOrder([4, 3, 2, 1]);  // false
inAscOrder([1, 3, 2, 4]);  // false

join(): 배열의 모든 element를 결합하고, 새 문자열로 반환한다.

sort(): 배열의 element를 정렬한 후, 그 배열을 반환한다.