+})
+
+/**
+ * Default worker choice strategy options.
+ */
+export const DEFAULT_WORKER_CHOICE_STRATEGY_OPTIONS: WorkerChoiceStrategyOptions =
+ {
+ medRunTime: false
+ }
+
+/**
+ * Compute the median of the given data set.
+ *
+ * @param dataSet - Data set.
+ * @returns The median of the given data set.
+ */
+export const median = (dataSet: number[]): number => {
+ if (Array.isArray(dataSet) && dataSet.length === 0) {
+ return 0
+ }
+ if (Array.isArray(dataSet) && dataSet.length === 1) {
+ return dataSet[0]
+ }
+ const sortedDataSet = dataSet.slice().sort((a, b) => a - b)
+ return (
+ (sortedDataSet[(sortedDataSet.length - 1) >> 1] +
+ sortedDataSet[sortedDataSet.length >> 1]) /
+ 2
+ )