Selection (deterministic & randomized): finding the median in linear time