# Cocktail Sort – Multiple Choice Questions and Answers (MCQs)

This set of Data Structures & Algorithms Multiple Choice Questions & Answers (MCQs) focuses on “Cocktail Sort”.

1. Cocktail sort is a comparison based sort.
A) True
B) False
Explanation: For sorting, cocktail sort compares the values of various elements in the sequence. As a result, it’s a comparison-based kind.

2. Cocktail sort uses which of the following methods for sorting the input?
A) selection
B) partitioning
C) merging
D) exchanging

Explanation: Cocktail sort is an exchanging approach that swaps out the elements that are out of order. This swapping is carried out in two stages: forward and backward.

3. What is the worst case time complexity of cocktail sort?
A) O(n)
B) O(n log n)
C) O(n2)
D) O(log n)

Explanation: When the input array is reverse sorted, the worst case complexity is observed. This is the same as the bubble sort’s worst case complexity.

4. What is the best case time complexity of cocktail sort?
A) O(n)
B) O(n log n)
C) O(n2)
D) O(log n)

Explanation: When the input array is already sorted, the best case complexity is observed. This is the same as the bubble sort’s best case difficulty.

5. What is the average case time complexity of odd-even sort?
A) O(n)
B) O(n log n)
C) O(n2)
D) O(log n)

Explanation: Cocktail sort, on average, takes O(n2) time because it applies bubble sort to the elements in two steps before they are all sorted. This is the same as bubble sort’s average time complexity.

6. How many iterations are required to sort the array arr={2,3,4,5,1} using bubble sort and cocktail sort respectively?
A) 4,2
B) 5,3
C) 5,2
D) 4,3

Explanation: When the list is sorted, cocktail sort uses bubble sort in two steps. So, in this case, bubble sort will take four iterations to sort the specified array, while cocktail sort will only take two. This demonstrates that the cocktail type performs better than the other.

7. The following function represents which sorting?

```void Sorting(int a[], int n)
{
bool swap = true;
int first = 0;
int last = n - 1;

while (swap)
{

swap = false;

for (int i = first; i < last;i++)
{
if (a[i] > a[i + 1])
{
swap(a[i], a[i + 1]);
swap = true;
}
}

if (!swap)
break;

swap = false;

--last;

for (int i = last - 1; i >= first; i--)
{
if (a[i] > a[i + 1])
{
swap(a[i], a[i + 1]);
swap = true;
}
}

++first;
}
}```

A) Bubble sort
B) Selection sort
C) Bidirectional bubble sort
D) Odd-even sort

Explanation: Bidirectional bubble sort, also known as cocktail sort, is represented by the provided function. We use bubble sort in two steps in this sort, forward and backward, until the array is sorted.

8. Bubble sort performs better as compared to cocktail sort.
A) True
B) False

Explanation: The time complexities in both bubble type and cocktail sort are the same. However, the cocktail type performs better in comparison.

9. Cocktail sort is also known as ________________
A) bidirectional sort
B) bubble sort
C) brick sort
D) ripple sort

Explanation: The cocktail type is often referred to as the ripple sort. Other names for it include bidirectional bubble sort, cocktail shaker sort, shuttle sort, and shuffle sort.

10. Cocktail sort is a variation of _____________
A) Bubble sort
B) Selection sort
C) Insertion sort
D) Gnome sort

Explanation: Cocktail type looks a lot like bubble sort. It traverses an array in both directions at the same time. In each iteration, it compares adjacent elements and swaps out the ones that are out of order.

11. Auxiliary space requirement of cocktail sort is _____________
A) O(n)
B) O(log n)
C) O(1)
D) O(n2)

Explanation: Cocktail sorting involves manipulating the input list itself. As a result, sorting does not necessitate any additional space. As a result, it necessitates constant auxiliary space.

12. Which of the following sorting algorithm is NOT stable?
A) Quick sort
B) Cocktail sort
C) Bubble sort
D) Merge sort

Explanation: Out of the given options quick sort is the only algorithm which is not stable. Cocktail sort like bubble sort is a stable sorting algorithm.

13. Which of the following sorting algorithm is in place?
A) cocktail sort
B) merge sort
C) counting sort