Randomized Selection Algorithm Find the k-th smallest element in an array without sorting (works in-place). Time complexity: O(n)