adplus-dvertising

Welcome to the Sorting and Searching MCQs Page

Dive deep into the fascinating world of Sorting and Searching with our comprehensive set of Multiple-Choice Questions (MCQs). This page is dedicated to exploring the fundamental concepts and intricacies of Sorting and Searching, a crucial aspect of Data Structures and Algorithms. In this section, you will encounter a diverse range of MCQs that cover various aspects of Sorting and Searching, from the basic principles to advanced topics. Each question is thoughtfully crafted to challenge your knowledge and deepen your understanding of this critical subcategory within Data Structures and Algorithms.

frame-decoration

Check out the MCQs below to embark on an enriching journey through Sorting and Searching. Test your knowledge, expand your horizons, and solidify your grasp on this vital area of Data Structures and Algorithms.

Note: Each MCQ comes with multiple answer choices. Select the most appropriate option and test your understanding of Sorting and Searching. You can click on an option to test your knowledge before viewing the solution for a MCQ. Happy learning!

Sorting and Searching MCQs | Page 18 of 24

Q171.
What is the time complexity of Fibonacci Search?
Discuss
Answer: (a).O(logn)
Discuss
Answer: (d).All of the mentioned
Q173.
What is the length of the step in jump search?
Discuss
Answer: (c).sqrt(n)
Q174.
Select the code snippet for Jump Search.
a)

public int jumpSearch(int arr[], int key)
{
 int size = arr.length;
 int step = floor(sqrt(size));
 int prev = 0;
 while (arr[(step > size ? step : size)] < key) 
        {
  prev = step;
  step += floor(sqrt(size));
  if (step >= size) 
                {
   return -1;
  }
 }
 while (arr[prev] < key) 
        {
  prev++;
  if (prev == (step < size ? step : size)) 
                {
   return -1;
  }
 }
 if (arr[prev] == key) 
        {
  return prev;
 }
 return -1;
}

b)

public int jumpSearch(int arr[], int key)
{
 int size = arr.length;
 int step = floor(sqrt(size));
 int prev = 0;
 while (arr[(step < size ? step : size)] < key) 
        {
  prev = step;
  step += floor(sqrt(size));
  if (step >= size) 
                {
   return -1;
  }
 }
 while (arr[prev] < key) 
        {
  prev++;
  if (prev == (step < size ? step : size)) 
                {
   return -1;
  }
 }
 if (arr[prev] == key) 
        {
  return prev;
 }
 return -1;
}

c)

public int jumpSearch(int arr[], int key)
{
 int size = arr.length;
 int step = floor(sqrt(size));
 int prev = 0;
 while (arr[(step > size ? step : size)] < key) 
        {
  prev = step;
  step += floor(sqrt(size));
  if (step >= size) 
                {
   return -1;
  }
 }
 while (arr[prev] > key) 
        {
  prev++;
  if (prev == (step < size ? step : size)) 
                {
   return -1;
  }
 }
 if (arr[prev] == key) 
        {
  return prev;
 }
 return -1;
}

d) None of the mentioned

a.

a

b.

b

c.

c

d.

d

Discuss
Answer: (b).b
Q175.
What is the time complexity of Jump Search?
Discuss
Answer: (c).O(sqrt(n))
Discuss
Answer: (a).It needs O(1) or O(logn) memory to create auxiliary locations
Discuss
Answer: (c).Large values need to be sorted with small keys
Q178.
What is the worst case complexity of selection sort?
Discuss
Answer: (d).O(n^2)
Q179.
Select the appropriate code that performs selection sort.
a)

        int min;
 for(int j=0; j<arr.length-1; j++)
 {
  min = j;
  for(int k=j+1; k<=arr.length-1; k++)
  {
   if(arr[k] < arr[min])
    min = k;
  }
  int temp = arr[min];
  arr[min] = arr[j];
  arr[j] = temp;
       }

b)

        int min;
 for(int j=0; j<arr.length-1; j++)
 {
  min = j;
  for(int k=j+1; k<=arr.length; k++)
  {
   if(arr[k] < arr[min])
    min = k;
  }
  int temp = arr[min];
  arr[min] = arr[j];
  arr[j] = temp; 
}

c)

        int min;
 for(int j=0; j<arr.length-1; j++)
 {
  min = j;
  for(int k=j+1; k<=arr.length-1; k++)
  {
   if(arr[k] > arr[min])
    min = k;
  }
  int temp = arr[min];
  arr[min] = arr[j];
  arr[j] = temp;
 }

d)

        int min;
 for(int j=0; j<arr.length-1; j++)
 {
  min = j;
  for(int k=j+1; k<=arr.length; k++)
  {
   if(arr[k] > arr[min])
    min = k;
  }
  int temp = arr[min];
  arr[min] = arr[j];
  arr[j] = temp;
 }

a.

a

b.

b

c.

c

d.

d

Discuss
Answer: (a).a
Discuss
Answer: (a).It requires no additional storage space

Suggested Topics

Are you eager to expand your knowledge beyond Data Structures and Algorithms? We've curated a selection of related categories that you might find intriguing.

Click on the categories below to discover a wealth of MCQs and enrich your understanding of Computer Science. Happy exploring!