[내가 푼 방식]
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;
'Algorithm 알고리즘' 카테고리의 다른 글
[프로그래머스 Lv1]하샤드 수(JAVA) (0) | 2021.08.27 |
---|---|
[프로그래머스 Lv1]핸드폰 번호 가리기(JAVA) (0) | 2021.08.26 |
[프로그래머스 Lv1]행렬의 덧셈(JAVA) (0) | 2021.08.25 |
[프로그래머스 Lv1]x만큼 간격이 있는 n개의 숫자(JAVA) (0) | 2021.08.24 |
[프로그래머스 Lv1]직사각형 별찍기(JAVA) (0) | 2021.08.23 |