GATE CSE
First time here? Checkout the FAQ!
x
+2 votes
181 views

asked in Algorithms by Boss (6.5k points)   | 181 views

1 Answer

+7 votes
Best answer
As far as space complexity is concerned , first we consider those algo as having less space requirement which are inplace and hence no auxilliary space is required.

So bubble sort and selection both are simple are simple iterative sorting algos , so they will consume space mainly for the input array only.

So  1  = 2

Now coming to quicksort and mergesort ,

space required for input array = O(n)

for function call stack = O(logn)  [using tail recursion optmisation we can reduce the space complexity of function call for quicksort to O(logn) and for merge sort it is always O(logn) ]

The difference hence comes in the fact that mergesort requires auxilliary array for merge operation whereas quicksort does not require any auxilliary array as it is an inplace algorithm.

Hence space complexity of quicksort < mergesort

Therefore the correct order is : 1 = 2 < 4 < 3

Hence A) should be the correct option.

For reference on tail recursion optimisation , plz refer :

http://www.geeksforgeeks.org/quicksort-tail-call-optimization-reducing-worst-case-space-log-n/
answered by Veteran (66.3k points)  
selected by
[using tail recursion optmisation we can reduce the space complexity of function call for quicksort to O(logn) and for merge sort it is always O(logn) ]

What does it mean...after optimisation what is the space complexity?

For mergesort the recurrence is always :

T(n) = 2T(n/2) + O(n)

So the height of the recursion tree which decides the number of function instances in function call instances will remain O(logn) only.

And for tail recursion optimisation method for quicksort , plz refer :

http://www.geeksforgeeks.org/quicksort-tail-call-optimization-reducing-worst-case-space-log-n/

okk..thank you


Top Users May 2017
  1. akash.dinkar12

    3578 Points

  2. pawan kumarln

    2314 Points

  3. Bikram

    1950 Points

  4. Arjun

    1848 Points

  5. sh!va

    1682 Points

  6. Debashish Deka

    1296 Points

  7. Devshree Dubey

    1282 Points

  8. Arunav Khare

    1122 Points

  9. Angkit

    1072 Points

  10. LeenSharma

    1028 Points

Monthly Topper: Rs. 500 gift card
Top Users 2017 May 29 - Jun 04
  1. Arunav Khare

    246 Points

  2. Arjun

    198 Points

  3. pawan kumarln

    108 Points

  4. Niharika 1

    90 Points

  5. pC

    90 Points


22,909 questions
29,242 answers
65,402 comments
27,744 users