max.js (8kyu 08)

Codewars 알고리즘 풀이


Description

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


Solution 01

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

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


Solution 02

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

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


Solution 03

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

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


Solution 04

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

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


Solution 05

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

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


Solution 06

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

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