中位数中位数:如果元素数量不是五的倍数会怎样?

时间:2013-03-08 22:07:54

标签: algorithm selection median-of-medians

我目前正在研究中位数的中位数。

从wiki学习后,我有一个问题:如果输入大小不能被5整除怎么办?如何使用中位数算法求中位数?

1 个答案:

答案 0 :(得分:2)

即使输入在几个方面的长度不是五的倍数,您也可以继续使用中位数算法算法。一种选择是让最后一个块只包含剩余元素并取其中位数并继续进行。另一种选择是在将元素分成五个块并取其中间值时完全忽略元素,因为通过忽略少于五个元素而找到的枢轴不会明显降低以这种方式找到的枢轴的质量(也就是说,你将会得到大约70/30的分裂,忽略了最多四个缺失的元素,并且添加这些元素并不会使分数过多。)

希望这有帮助!