Averages/Median: Difference between revisions

Content deleted Content added
Aerobar (talk | contribs)
add RPL
Reilas (talk | contribs)
Line 2,128: Line 2,128:


Sorting:
Sorting:
<syntaxhighlight lang="java5">// Note: this function modifies the input list
<syntaxhighlight lang="java">
public static double median(List<Double> list) {
double median(List<Double> values) {
/* copy, as to prevent modifying 'values' */
List<Double> list = new ArrayList<>(values);
Collections.sort(list);
Collections.sort(list);
/* 'mid' will be truncated */
return (list.get(list.size() / 2) + list.get((list.size() - 1) / 2)) / 2;
int mid = list.size() / 2;
}</syntaxhighlight>
return switch (list.size() % 2) {
case 0 -> {
double valueA = list.get(mid);
double valueB = list.get(mid + 1);
yield (valueA + valueB) / 2;
}
case 1 -> list.get(mid);
default -> 0;
};
}
</syntaxhighlight>


{{works with|Java|1.5+}}
{{works with|Java|1.5+}}