프로그래머스/level 1
[프로그래머스] 평균 구하기
binaryJournalist
2021. 7. 23. 20:25
반응형
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
** Javascript
나의 풀이다.
(프로그래머스 풀다 보니 reduce에 대해 호기심이 생겨 level1 에서 reduce를 엄청 사용하기 시작하였다.)
function solution(arr) {
return arr.reduce((acc, curr) => acc + curr) / arr.length;
}
** Java
java는 그냥 for문을 돌렸다. for문이 가장 빠르다고 매번 갓택오버플로우에서 얘기가 나왔기에
class Solution {
public double solution(int[] arr) {
double answer = 0;
for (int i = 0; i < arr.length; i++) {
answer += arr[i];
}
return answer / arr.length;
}
}
다른 사람들 풀이 보면 null 체크도 해줬다. 나는 그럼 for문 형태를 변형하겠다.
class Solution {
public double solution(int[] arr) {
if (arr == null || arr.length == 0) return Double.valueOf(0);
double sum = 0;
for (int number : arr) {
sum += number;
}
return sum / arr.length;
}
}
arr 이 비어있거나 null 일 경우 바로 0으로 빠지도록 한다. 알다시피 0으로 나누는 건 안되기 때문.
반응형