본문 바로가기

알고리즘 코딩

배열의 모든 요소의 값의 평균을 구하는 알고리즘

이 문제도 제목 그대로다. 자세한 문제는 아래 링크 참조바란다.

https://school.programmers.co.kr/learn/courses/30/lessons/12944

 

순도 99% 나의 답안이라고 봐야겠다. 아래와 같다. 자세한 내용은 주석 참조바란다.

 

function solution(arr) {
    var answer = 0;
    answer = (arr.reduce((acc, cur) => acc + cur))/arr.length;
    // arr 의 첫번째 요소부터 acc에 넣고 두번째 요소는 cur에 들어간다. 그 둘을 더한다. 더한 결과를 또다시 acc에 넣고 그 다음 요소를 더한다.
    // [번외] 메서드 이름이 reduce 인 이유는 배열의 요소 하나하나를 사용해 함수를 실행하는 과정에서 사용할 요소가 '줄어들기' 때문인 듯하다.
    console.log(answer)
    return answer;
}


arr = [-3, 1, 5, -2, 8]

solution(arr)

 

일단 나는 여기서 일부러 reduce를 사용했다. 어려워 보여서 연습삼아서. 다른 방법도 많다.