알고리즘 연습/Lv.1

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

코딩하는 너구리 2020. 5. 4. 00:51
반응형

평균구하기

 

문제 설명

정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.

 

제한사항

  • arr은 길이 1 이상, 100 이하인 배열입니다.
  • arr의 원소는 -10,000 이상 10,000 이하인 정수입니다.

 

입출력 예

[1,2,3,4] 2.5
[5,5] 5

 

 

문제 접근 방식

->  for문을 사용하여 전체 정수에 접근하려고 했습니다. 총합을 구한 뒤 갯수만큼 나누어 평균값을 찾으려고 했습니다.

 

 

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

 

 

 

문제 풀이

평균을 찾아야 하므로 double형 변수 answer를 선언했습니다.

주어진 배열만큼 반복하면서 총합을 구한 뒤, 배열 길이만큼 나누어 정답을 출력했습니다.

 

 

 

고수의 풀이

 

Arraysstream에서 제공하는 average() 함수를 사용하여 편리하게 풀이할 수 있습니다.

단 한 줄로 해결할 수 있기 때문에, stream 문법을 잘 숙지해두면 좋을 것 같습니다.

 

import java.util.*;

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

 

 

 

 

 

 

출처 : https://programmers.co.kr/learn/courses/30/lessons/12944

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

반응형