[java] 정렬 알고리즘을 이용한 중앙값, 최빈값, 중간값 등 특정 값을 계산하는 방법
정렬 알고리즘을 이용하여 중앙값, 최빈값, 중간값 등을 계산하는 과정은 간단하면서도 유용합니다. 다음은 이를 수행하는 자바 코드의 예시입니다.
1. 중앙값(Median) 계산
import java.util.Arrays;
public class MedianCalculator {
public static double calculateMedian(int[] array) {
Arrays.sort(array);
int length = array.length;
if (length % 2 == 0) {
return (array[length / 2 - 1] + array[length / 2]) / 2.0;
} else {
return array[length / 2];
}
}
}
2. 최빈값(Mode) 계산
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
public class ModeCalculator {
public static int calculateMode(int[] array) {
Map<Integer, Integer> frequencyMap = new HashMap<>();
for (int num : array) {
frequencyMap.put(num, frequencyMap.getOrDefault(num, 0) + 1);
}
int maxFrequency = 0;
int mode = 0;
for (Map.Entry<Integer, Integer> entry : frequencyMap.entrySet()) {
int frequency = entry.getValue();
if (frequency > maxFrequency) {
maxFrequency = frequency;
mode = entry.getKey();
}
}
return mode;
}
}
3. 중간값(Midrange) 계산
import java.util.Arrays;
public class MidrangeCalculator {
public static double calculateMidrange(int[] array) {
Arrays.sort(array);
return (array[0] + array[array.length - 1]) / 2.0;
}
}
이와 같은 방법으로 정렬 알고리즘을 활용하여 중앙값, 최빈값, 중간값 등을 계산할 수 있습니다.
위 예시 코드는 기본적인 경우를 다루었으니 상황에 따라 코드를 수정하여 활용할 수 있습니다.
참고 자료
- Oracle 자바 공식 문서: https://docs.oracle.com/en/java/
- GeeksforGeeks: https://www.geeksforgeeks.org/
위 코드는 예시로 작성된 것이며, 적절한 예외 처리와 유효성 검증을 포함시켜 실제 환경에서 사용할 수 있도록 보강해야 합니다.