min.js (8kyu 07)

Codewars 알고리즘 풀이


Description

  • Your task is to make function that take an array of integers as input and outputs, the lowest number in that array.
    • 정수 배열에서 가장 작은 숫자를 반환한다.


Solution 01

function min(arr) {
  let minimum = arr[0];
  
  for (let i = 1; i < arr.length; i++) {
    if (arr[i] < minimum) {
      minimum = arr[i];
    }
  }
  
  return minimum;
}

min([1, 2, 3, 4]);    // 1
min([3, 1, 4, 2]);    // 1
min([-2, -1, 0, 1]);  // -2


Solution 02

function min(arr) {
  return arr.sort((a, b) => a - b)[0];
}

min([1, 2, 3, 4]);    // 1
min([3, 1, 4, 2]);    // 1
min([-2, -1, 0, 1]);  // -2


Solution 03

function min(arr) {
  return arr.sort((a, b) => a - b).shift();
}

min([1, 2, 3, 4]);    // 1
min([3, 1, 4, 2]);    // 1
min([-2, -1, 0, 1]);  // -2


Solution 04

function min(arr) {
  return arr.sort((a, b) => b - a).pop();
}

min([1, 2, 3, 4]);    // 1
min([3, 1, 4, 2]);    // 1
min([-2, -1, 0, 1]);  // -2


Solution 05

function min(arr) {
  return Math.min.apply(null, arr);
}

min([1, 2, 3, 4]);    // 1
min([3, 1, 4, 2]);    // 1
min([-2, -1, 0, 1]);  // -2


Solution 06

function min(arr) {
  return Math.min(...arr);
}

min([1, 2, 3, 4]);    // 1
min([3, 1, 4, 2]);    // 1
min([-2, -1, 0, 1]);  // -2