마토의 세상

MATO WORLD

Algorithm 알고리즘

[프로그래머스 Lv1]평균구하기(JAVA)

jy-agnes-lee 2021. 8. 27. 23:15

[내가 푼 방식]

int의 합을 구해 double로 변경한 후 이를 나누는 방식

푸는 건 얼마 안걸렸음.

class Solution {
    public double solution(int[] arr) {
        double answer = 0;
        int sum=0;
        for(int i =0; i<arr.length;i++){
            sum+=arr[i];
        }
        Double dsum=Double.valueOf(sum);
        answer = dsum/arr.length;
        return answer;
    }
}

# 나의 궁금증 ! 코딩테스트 코드를 짤 때, 변수 선언을 따로 하는 게 더 효율적일까?

왼쪽은 길이 변수를 따로 선언하지 않은 경우, 오른쪽은 길이 변수를 따로 선언한 경우

본 결과, 메모리는 대체적으로 선언한 오른쪽의 경우가 낮지만 그렇다고 모든 경우 낮아지는 것은 아니며

속도 역시 대체로 오른쪽이 빠른 것 같지만 그렇다고 모든 경우 빠른 건 아님.

이유를 좀 더 찾아봐야겠다.

 

[참고하고 싶은 방식]

새로운 변수를 선언하지 않고 기존의 변수를 활용하는 방법

        answer = Double.valueOf(sum);
        answer = answer/len;