Re:The Median-of-Medians Algorithm
by nskelsey on Monday October 28, 2013 @03:55PM
(#6629351)
Here is a python implementation. https://github.com/NSkelsey/algorithms/blob/master/select.py
[ Parent
| on HN ]
Sorting the sub-lists to find the 5 medians by itself is at best a O(nlogn) as per this example. That would make the algorithm non O(n). Or am I missing something?
Yes you are. It's O(nlogn) where n is 5 - i.e. it's constant time (you can easily find the median by 4 comparisons to find the smallest of the 5, followed by 3 comparisons for the 2nd smallest, followed by 2 comparisons for the median - a total of 9 comparisons)
Re:The Median-of-Medians Algorithm
by ihateloggingin on Tuesday October 29, 2013 @03:04PM
(#6636641)
Put otherwise: to sort them all it's O(n/5*(5 log 5)) = O(n).