본문 바로가기
코딩테스트/프로그래머스

[프로그래머스/Java] LV.1 평균 구하기

by ⓞㅖ롱 2022. 9. 16.

배열의 평균을 구하는 간단한 문제였다.

 

내 코드

class Solution {
    public double solution(int[] arr) {
        double answer = 0;

        for(int num : arr){
            answer += num;
        }
        answer = answer / arr.length;

        return answer;
    }
}

배열 arr를 for문으로 돌려 간단하게 해결했다.

 

다른사람 코드

import java.util.Arrays;

class Solution {
    public double solution(int[] arr) {
        return (double) Arrays.stream(arr).average().orElse(0);
    }
}

라이브러리를 통해 한줄로 해결!

짧은 코드라 좋아보이지만 댓글을 보니 효율성 측면에선 알고리즘이 훨씬 좋다는 얘길 듣고 비교해봄

 

왼쪽이 내 코드를 실행했을때고 오른쪽은 라이브러리를 사용한 코드를 돌렸을때인데,

내 코드가 효율성 측면에서 훨씬 뛰어나다는 걸 발견..!

라이브러리가 생각보다 속도가 느리구나 코드가 짧다고 꼭 좋은 것은 아닌가보다