1) Randomizing quicksort works by randomly permuting the elements of the input array before sorting or by modifying the partition procedure to randomly exchange the pivot element with another randomly chosen element. 2) This randomization means no input can elicit the worst case behavior, making the worst case less likely to occur. 3) The expected number of comparisons in the partition procedure is O(n log n), so the expected running time of randomized quicksort is O(n log n).