알고리즘 65 - Sum of two lowest positive integers

Q.

Create a function that returns the sum of the two lowest positive numbers given an array of minimum 4 positive integers. No floats or non-positive integers will be passed.

For example, when an array is passed like [19, 5, 42, 2, 77], the output should be 7.

[10, 343445353, 3453445, 3453545353453] should return 3453455.

A)

function sumTwoSmallestNumbers(numbers) {  
  let firstMin = Math.min(...numbers);
  
  numbers.splice(numbers.indexOf(firstMin), 1);
  let secondMin = Math.min(...numbers);
  
  return firstMin + secondMin;
}

other

이렇게 풀 생각은 하지도 못했는데 .sort로 오름차순으로 정렬한 뒤, 앞에서 두번째까지만 더하면 결과가 나올 수있다 ...! 원본도 해치지 않으면서 간단한 방법이다!

function sumTwoSmallestNumbers(numbers){  
  numbers = numbers.sort(function(a, b){return a - b; });
  return numbers[0] + numbers[1];
};

좋은 웹페이지 즐겨찾기