N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.
//Math함수 쓰기
const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');
let v = input[1].split(' ').map(Number)
const min = Math.min(...v)
const max = Math.max(...v)
console.log(min,max)
//for문 쓰기
const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');
let v = input[1].split(' ').map(Number)
let min = v[0]
let max = v[0]
for(let i=1; i<v.length; i++){
if(v[i] < min){
min=v[i]
}
if(v[i]>max){
max=v[i]
}
}
console.log(min,max)
for문을 썼는데, 메모리는 줄었지만 시간은 더 늘어난다.
어떤게 더 효율적인 것인가..
스프레드 연산자를 쓰면, 배열을 풀어야하니까..배열이 더 길어진다면, 반복문을 쓰는게 더 좋을듯 하다.