+11 votes
729 views
Assume that the last element of the set is used as partition element in Quicksort. If $n$ distinct elements from the set $\left[1\dots n\right]$ are to be sorted, give an input for which Quicksort takes maximum time.
asked
retagged | 729 views

## 1 Answer

+28 votes
Best answer

The algorithm will take maximum time when:

1. The array is already sorted in same order.(Here,ascending order)
2. The array is already sorted in reverse order.
3. All elements are same in the array(Here,we have n distinct elements).So, we can say the above points (1) and (2) as answers.
answered by Boss (34.1k points)
edited
0
@Arjun Sir what is the meaning of 1) The array is already sorted in same order.

is it mean elements are in ascending order?
+3
@srestha It means if our goal is to sort in asc order.

and array is already in asc order.
+1
3rd point in the answer is not a valid case as question says input is distinct elements
+1
@rahul sharma
He has said a generic statement, which is not specific to this question.
+1
quick sort:

1==>ascending order:o(n^2)

2==>descending order:o(n^2)

3==>quick sort is a unstable algo,so if all elements are same then also it takes o(n^2) time complexity(3rd point is not applicable in this problem as in problem given all the elements are distinct )

+19 votes
3 answers
1
+5 votes
2 answers
2
+13 votes
3 answers
3
+3 votes
5 answers
4
+13 votes
5 answers
5
+12 votes
1 answer
6
+21 votes
1 answer
7