UNPKG

@thi.ng/vectors

Version:

Optimized 2d/3d/4d and arbitrary length vector operations, support for memory mapping/layouts

20 lines (19 loc) 424 B
import { __ensureInputs } from "./ensure.js"; const median = (out, src) => { __ensureInputs(src); out = out || []; const m = src.length >> 1; for (let i = src[0].length; i-- > 0; ) { out[i] = src.map((x) => x[i]).sort((a, b) => a - b)[m]; } return out; }; const vmedian = (a) => { if (!a.length) return 0; a = [...a].sort((a2, b) => a2 - b); return a[a.length >> 1]; }; export { median, vmedian };