GATE | GATE-CS-2015 (Mock Test) | Question 9
Which of the following changes to typical QuickSort improves its performance on average and are generally done in practice.
1) Randomly picking up to make worst case less likely to occur. 2) Calling insertion sort for small sized arrays to reduce recursive calls. 3) QuickSort is tail recursive, so tail call optimizations can be done. 4) A linear time median searching algorithm is used to pick the median, so that the worst case time reduces to O(nLogn)
(A) 1 and 2
(B) 2, 3, and 4
(C) 1, 2 and 3
(D) 2, 3 and 4
Explanation: The 4th optimization is generally not used, it reduces the worst case time complexity to O(nLogn), but the hidden constants are very high.
Quiz of this Question