/* Ċ Ġ* ĠCopyright Ġ 2 0 1 8 - 2 0 2 1 ĠK Math Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġspace . k science . k math . stat Ċ Ċ import Ġspace . k science . k math . operations . as Sequence Ċ import Ġspace . k science . k math . structures . Buffer Ċ Ċ /** Ċ Ġ* ĠNon - comp osable Ġmedian Ċ Ġ*/ Ċ public Ġclass ĠMed ian < T >( private Ġval Ġcomparator : ĠComparator < T >) Ġ: ĠBlock ing Statistic < T , ĠT > Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġevaluate Blocking ( data : ĠBuffer < T >): ĠT Ġ= ĊĠĠĠĠĠĠĠ Ġdata . as Sequence (). sorted With ( comparator ). toList ()[ data . size Ġ/ Ġ 2 ] Ġ// TODO Ġcheck Ġif Ġthis Ġis Ġcorrect ĊĊĠĠĠ Ġpublic Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġpublic Ġval Ġreal : ĠMed ian < Double > Ġ= ĠMed ian Ġ{ Ġa : ĠDouble , Ġb : ĠDouble Ġ-> Ġa . compareTo ( b ) Ġ} ĊĠĠĠ Ġ} Ċ }