adplus-dvertising
frame-decoration

Question

Which of the following code performs the partition operation in QuickSort?
a)

private static int partition(int[] arr, int low, int high)
{
 int left, right, pivot_item = arr[low];
 left = low;
 right = high;
 while(left > right)
 {
  while(arr[left] <= pivot_item)
  {
   left++;
  }
  while(arr[right] > pivot_item)
  {
   right--;
  }
  if(left < right)
  {
   swap(arr, left, right);
  }
 }
 arr[low] = arr[right];
 arr[right] = pivot_item;
 return right;
}

b)

private static int partition(int[] arr, int low, int high)
{
 int left, right, pivot_item = arr[low];
 left = low;
 right = high;
 while(left <= right)
 {
  while(arr[left] <= pivot_item)
  {
   left++;
  }
  while(arr[right] > pivot_item)
  {
   right--;
  }
  if(left < right)
  {
   swap(arr, left, right);
  }
 }
 arr[low] = arr[right];
 arr[right] = pivot_item;
 return right;
}

c)

private static int partition(int[] arr, int low, int high)
{
 int left, right, pivot_item = arr[low];
 left = low;
 right = high;
 while(left <= right)
 {
  while(arr[left] > pivot_item)
  {
   left++;
  }
  while(arr[right] <= pivot_item)
  {
   right--;
  }
  if(left < right)
  {
   swap(arr, left, right);
  }
 }
 arr[low] = arr[right];
 arr[right] = pivot_item;
 return right;
}

d)

private static int partition(int[] arr, int low, int high)
{
 int left, right, pivot_item = arr[low];
 left = low;
 right = high;
 while(left > right)
 {
  while(arr[left] > pivot_item)
  {
   left++;
  }
  while(arr[right] <= pivot_item)
  {
   right--;
  }
  if(left < right)
  {
   swap(arr, left, right);
  }
 }
 arr[low] = arr[right];
 arr[right] = pivot_item;
 return right;
}

a.

a

b.

b

c.

c

d.

d

Answer: (b).b

Engage with the Community - Add Your Comment

Confused About the Answer? Ask for Details Here.

Know the Explanation? Add it Here.

Q. Which of the following code performs the partition operation in QuickSort?

Similar Questions

Discover Related MCQs

Q. What is the best case complexity of QuickSort?

Q. The given array is arr = {2,3,4,1,6}. What are the pivots that are returned as a result of subsequent partitioning?

Q. What is the average case complexity of QuickSort?

Q. The given array is arr = {2,6,1}. What are the pivots that are returned as a result of subsequent partitioning?

Q. Which of the following is not true about QuickSort?

Q. What is the time complexity for a given pancake sort given it undergoes ā€œnā€ flip operations?

Q. Which operation is most essential to the process of pancake sort?

Q. How many flips does the simplest of pancake sorting techniques require?

Q. Pancake Sorting appears in which of the following?

Q. In addition to the pancake sorting problem, there is the case of the burnt pancake problem in which we are dealing with pancakes (discs) that are burnt on one side only. In this case it is taken that the burnt side must always end up _______

Q. In a computational complexity theory, a problem with decision making is said to be NP-complete when it is both in NP and NP-hard. What does NP mean?

Q. When we realize a specific implementation of a pancake algorithm, every move when we find the greatest of the sized array and flipping can be modeled through __________

Q. The Pancake Problems (1975, 1979, 1973) did NOT involve which of the following people?

Q. Topological sort can be applied to which of the following graphs?

Q. Most Efficient Time Complexity of Topological Sorting is? (V ā€“ number of vertices, E ā€“ number of edges)

Q. Topological sort starts from a node which has?

Q. What can be the applications of topological sorting?

Q. Topological sort of a Directed Acyclic graph is?

Q. Topological sort can be implemented by?

Q. Topological sort is equivalent to which of the traversals in trees?