배열의 평균을 구하는 간단한 문제였다.
내 코드
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);
}
}
라이브러리를 통해 한줄로 해결!
짧은 코드라 좋아보이지만 댓글을 보니 효율성 측면에선 알고리즘이 훨씬 좋다는 얘길 듣고 비교해봄
왼쪽이 내 코드를 실행했을때고 오른쪽은 라이브러리를 사용한 코드를 돌렸을때인데,
내 코드가 효율성 측면에서 훨씬 뛰어나다는 걸 발견..!
라이브러리가 생각보다 속도가 느리구나 코드가 짧다고 꼭 좋은 것은 아닌가보다
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스/Java] LV.1 문자열 내 p와 y의 개수 (1) | 2022.09.20 |
---|---|
[프로그래머스/Java] LV.1 자연수 뒤집어 배열로 만들기 (0) | 2022.09.19 |
[프로그래머스/Java] LV.1 정수 제곱근 판별 (0) | 2022.09.14 |
[프로그래머스/Java] LV.1 자릿수 더하기 (0) | 2022.09.13 |
[프로그래머스/Java] LV.1 나머지가 1이 되는 수 찾기 (0) | 2022.09.13 |