UNPKG

tamda

Version:

Practical functional programming library for TypeScript

23 lines 671 B
import { infer } from '../function/infer'; import { sort } from '../list/sort'; export function median() { return inferred.apply(undefined, arguments); } const inferred = infer((array) => { const sorted = sort(array); const odd = sorted.length % 2; return odd ? middle(sorted) : middleMean(sorted); }); function middleLeft(array) { return array[array.length / 2 - 1]; } function middleRight(array) { return array[array.length / 2]; } function middleMean(array) { return (middleLeft(array) + middleRight(array)) / 2; } function middle(array) { return array[(array.length - 1) / 2]; } //# sourceMappingURL=median.js.map