Data Structrue MCQ's
Data Structrue MCQ's
Process of
inserting an element in stack is called ____
a) Create
b) Push
c) Evaluation
d) Pop
View Answer
Answer: b
advertisement
a) Create
b) Push
c) Evaluation
d) Pop
View Answer
Answer: d
a) Underflow
b) Empty collection
c) Overflow
d) Garbage Collection
View Answer
Answer: a
a) Overflow
b) Crash
c) Underflow
d) User flow
View Answer
Answer: a
View Answer
Answer: d
advertisement
View Answer
Answer: d
a) 1
b) 2
c) 3
d) 4 or more
View Answer
Answer: c
a) 1
b) 2
c) 3
d) 4 or more
View Answer
Answer: b
a) 1
b) 40
c) 74
d) -18
View Answer
Answer: d
advertisement
a) 1
b) 2
c) 3
d) 4
View Answer
Answer: d
« PrevNext »
b) AB + CD* E – F **G /
c) AB + CD* E – *F *G /
d) AB + CDE * – * F *G /
View Answer
Answer: c
(AB+(*(C*D- E)*F )/ G)
(AB+CD*E-*F) / G
advertisement
a) Stack
b) Queue
c) Array
d) Tree
View Answer
Answer: a
a) Linked List
b) Stack
c) Queue
d) Tree
View Answer
Answer: b
a) Heap
b) Binary Tree
c) Array
d) Stack
View Answer
Answer: d
a) *AB/CD+
b) AB*CD/+
c) A*BC+/D
d) ABCD+/*
View Answer
Answer: b
AB*+(C/D)
advertisement
a) Branch
b) Tree
c) Queue
d) Stack
View Answer
Answer: d
a) -/*^ACBDE
b) -ABCD*^DE
c) -A/B*C^DE
d) -A/BC*^DE
View Answer
Answer: c
(-A/B)(C*D^E)
a) X
b) X+S
c) S
d) XS
View Answer
Answer: a
a) + pq – *rt
b) – +pqr * t
c) – +pq * rt
d) – + * pqrt
View Answer
Answer: c
(+pq)-(r*t)
(-+pq)(r*t)
advertisement
a) Queue
b) Stack
c) Array
d) List
View Answer
Answer: b
View Answer
Answer: a
a) Heap Sort
b) Quick Sort
c) Insertion Sort
d) Merge Sort
View Answer
Answer: c
a) O(nlogn)
b) O(n2)
c) O(n)
d) O(logn)
View Answer
Answer: b
a) True
b) False
View Answer
Answer: a
Explanation: In the incremental algorithms, the
complicated structure on n items is built by first building it
on n − 1 items. And then we make the necessary changes
to fix things in adding the last item. Insertion sort builds
the sorted sequence one element at a time. Therefore, it
is an example of an incremental algorithm.
int i, j, value;
value = arr[i];
j = i;
while (____ )
j = j − 1;
arr[j] = value;
View Answer
Answer: b
a) Quick Sort
b) Selection Sort
c) Merge Sort
d) Insertion Sort
View Answer
Answer: d
View Answer
Answer: a
Initial : 9 7 4 2 1 key = 7
7 9 4 2 1 key = 4
4 7 9 2 1 key = 2
2 4 7 9 1 key = 1
12479
View Answer
Answer: b
Explanation: In insertion sort, after m passes through the
array, the first m elements are in sorted order but they are
whatever the first m elements were in the unsorted array.
a) 9
b) 4
c) 7
d) 14
View Answer
Answer: b
a) Bubble Sort
b) Quick Sort
c) Partition-exchange Sort
d) Insertion Sort
View Answer
Answer: d
View Answer
Answer: a
View Answer
Answer: b
Explanation: As the name suggests, internal sorting
algorithm uses internal main memory.
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
a)
arr[k] = arr[k+1];
arr[k+1] = temp;
}
b)
arr[k] = arr[k+1];
arr[k+1] = temp;
c)
arr[k] = arr[k+1];
arr[k+1] = temp;
d)
arr[k] = arr[k+1];
arr[k+1] = temp;
View Answer
Answer: a
Explanation: The outer loop keeps count of number of
iterations, and the inner loop checks to see if swapping is
necessary.
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
a) It is faster
View Answer
Answer: c
Explanation: Optimised Bubble sort is one of the simplest
sorting techniques and perhaps the only advantage it has
over other techniques is that it can detect whether the
input is already sorted. It is faster than other in case of
sorted array and consumes less time to describe whether
the input array is sorted or not. It consumes same memory
than other sorting techniques. Hence it is not an
advantage.
a) 4
b) 2
c) 1
d) 0
View Answer
Answer: a
a)
{
swapped = true;
arr[k] = arr[k+1];
arr[k+1] = temp;
swapped = false;
b)
swapped = false;
arr[k] = arr[k+1];
arr[k+1] = temp;
c)
swapped = false;
arr[k] = arr[k+1];
arr[k+1] = temp;
swapped = true;
d)
arr[k] = arr[k+1];
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: c
a) 4
b) 2
c) 1
d) 0
View Answer
Answer: b
View Answer
Answer: a
View Answer
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
a)
int min;
min = j;
min = k;
arr[min] = arr[j];
arr[j] = temp;
b)
int min;
min = j;
min = k;
arr[min] = arr[j];
arr[j] = temp;
c)
int min;
min = j;
min = k;
arr[min] = arr[j];
arr[j] = temp;
d)
int min;
min = j;
min = k;
arr[min] = arr[j];
arr[j] = temp;
View Answer
Answer: a
b) It is scalable
View Answer
Answer: a
Explanation: Since selection sort is an in-place sorting
algorithm, it does not require additional storage.
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
b) It is not scalable
View Answer
Answer: b
b) 4 and 5
c) 2 and 4
d) 2 and 5
View Answer
Answer: a
a) 5 and 4
b) 1 and 4
c) 0 and 4
d) 4 and 1
View Answer
Answer: d
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
a) backtracking
b) greedy algorithm
d) dynamic programming
View Answer
Answer: c
a) O(n log n)
b) O(n2)
c) O(n2 log n)
View Answer
Answer: a
a) O(1)
b) O(log n)
c) O(n)
d) O(n log n)
View Answer
Answer: c
a) true
b) false
View Answer
Answer: a
a) O(n log n)
b) O(n2)
c) O(n2 log n)
View Answer
Answer: a
a) merging
b) partitioning
c) selection
d) exchanging
View Answer
Answer: a
a) O(n log n)
b) O(n2)
c) O(n2 log n)
View Answer
Answer: a
View Answer
Answer: d
Explanation: In-place, top down and bottom up merge sort
are different variants of merge sort. Whereas linear merge
sort is not a possible variant as it is a comparison based
sort and the minimum time complexity of any comparison
based sort is O(n log n).
b) it is an adaptive algorithm
d) it is stable algorithm
View Answer
Answer: b
a) merge sort
b) quick sort
c) heap sort
d) insertion sort
View Answer
Answer: a
Explanation: An additional space of O(n) is required in
order to merge two sorted arrays. Thus merge sort is not
an in place sorting algorithm.
a) Quick sort
b) Cocktail sort
c) Bubble sort
d) Merge sort
View Answer
Answer: a
a) Quick sort
b) Insertion sort
c) Selection sort
d) Merge sort
View Answer
Answer: d
a) true
b) false
View Answer
Answer: b
a) tim sort
b) intro sort
c) bogo sort
d) quick sort
View Answer
Answer: a
a)
void merge_sort(int arr[], int left, int right)
b)
c)
d)
View Answer
Answer: b
a) quick sort
b) merge sort
c) heap sort
View Answer
Answer: d
a) Merge sort
b) Quick sort
c) Insertion sort
d) Shell sort
View Answer
Answer: b
a) True
b) False
View Answer
Answer: a
Explanation: In quick sort, the array is divided into
sub-arrays and then it is sorted (divide-and-conquer
strategy).
a) O(N)
b) O(N log N)
c) O(N2)
d) O(log N)
View Answer
Answer: c
a) first element
b) last element
c) median-of-three partitioning
d) random element
View Answer
Answer: c
8, 1, 4, 9, 6, 3, 5, 2, 7, 0.
a) 8
b) 7
c) 9
d) 6
View Answer
Answer: d
Centre=[position(left+right)/2]=6.
View Answer
Answer: a
a) O(N2)
b) O(N)
c) O(N log N)
d) O(log N)
View Answer
Answer: c
a) Merge sort
b) Shell sort
c) Insertion sort
d) Bubble sort
View Answer
Answer: c
a) true
b) false
View Answer
Answer: a
10. How many sub arrays does the quick sort algorithm
divide the entire array into?
a) one
b) two
c) three
d) four
View Answer
Answer: b
c) median-of-three partitioning
View Answer
Answer: a
Explanation: Choosing the first element as pivot is the
worst method because if the input is pre-sorted or in
reverse order, then the pivot provides a poor partition.
a) N=0-5
b) N=5-20
c) N=20-30
d) N>30
View Answer
Answer: b
a) greedy algorithm
d) backtracking algorithm
View Answer
Answer: b
Explanation: Quick sort is a divide and conquer algorithm.
Quick sort first partitions a large array into two smaller
sub-arrays. And then recursively sorts the sub-arrays.
a) O(nlogn)
b) O(n)
c) O(n3)
d) O(n2)
View Answer
Answer: d
a) 6 4 3 7 11 9 14 12
b) 6 3 4 7 9 14 11 12
c) 7 6 14 11 9 4 3 12
d) 7 6 4 3 9 14 11 12
View Answer
Answer: b
7 11 14 6 9 4 3 12
i j
7 11 14 6 9 4 3 12
i j
7 3 14 6 9 4 11 12
i j
7 3 4 6 9 14 11 12
i j
7 3 4 6 9 14 11 12
j i
6 3 4 7 9 14 11 12
a) n/2 : (n/2) – 1
b) n/2 : n/3
c) n/4 : 3n/2
d) n/4 : 3n/4
View Answer
Answer: a
b) False
View Answer
Answer: b
View Answer
Answer: b
a) 22 25 56 67 89
b) 52 25 76 67 89
c) 22 25 76 67 50
d) 52 25 89 67 76
View Answer
Answer: a
a) 60.2 sec
b) 45.54 sec
c) 31.11 sec
d) 20 sec
View Answer
Answer: c
Explanation: The Quick sort requires nlog2n comparisons
in best case, where n is size of input array. So, 1000 *
log21000 ≈ 9000 comparisons are required to sort 1000
elements, which takes 200 sec. To sort 200 elements
minimum of 200 * log2200 ≈ 1400 comparisons are
required. This will take 200 * 1400 / 9000 ≈ 31.11 sec.
a) Bubble sort
b) Insertion sort
c) Merge sort
d) Quick sort
View Answer
Answer: d
a) Bubble sort
b) Selection sort
c) Insertion sort
View Answer
Answer: d
c) Greedy algorithm
d) Dynamic programming
View Answer
Answer: b
a)
int pivot;
if(high>low)
{
b)
int pivot;
if(high<low)
c)
int pivot;
if(high>low)
{
d)
int pivot;
if(high>low)
View Answer
Answer: a
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
View Answer
Answer: c
a)
{
int left, right, pivot_item = arr[low];
left = low;
right = high;
left++;
right--;
arr[low] = arr[right];
arr[right] = pivot_item;
return right;
b)
private static int partition(int[] arr, int low, int high)
left = low;
right = high;
left++;
right--;
arr[low] = arr[right];
arr[right] = pivot_item;
return right;
}
c)
left = low;
right = high;
left++;
right--;
arr[low] = arr[right];
arr[right] = pivot_item;
return right;
d)
left = low;
right = high;
left++;
right--;
}
arr[low] = arr[right];
arr[right] = pivot_item;
return right;
View Answer
Answer: b
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: a
a) 1 and 3
b) 3 and 1
c) 2 and 6
d) 6 and 2
View Answer
Answer: a
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: a
a) 1 and 6
b) 6 and 1
c) 2 and 6
d) 1
View Answer
Answer: d
Explanation: There is only one pivot with which the array
will be sorted, the pivot is 1.
a) in-place algorithm
View Answer
Answer: b
c) it is easy to implement
View Answer
Answer: d
Explanation: Recursive insertion sort has no significant
advantage over iterative insertion sort. It is just a different
way to implement the same.
a) true
b) false
View Answer
Answer: a
a) T(n) = 2T(n/2) + n
b) T(n) = 2T(n/2) + c
c) T(n) = T(n-1) + n
d) T(n) = T(n-1) + c
View Answer
Answer: c
b) Quick sort
c) Insertion sort
d) Heap sort
View Answer
Answer: c
a) selection sort
b) shell sort
c) odd-even sort
d) stupid sort
View Answer
Answer: b
a) True
b) False
View Answer
Answer: a
a) O(n)
b) O(n log n)
c) O(n2)
d) O(log n)
View Answer
Answer: c
a) O(n)
b) O(n log n)
c) O(n2)
d) O(log n)
View Answer
Answer: a
Explanation: The best case time complexity of recursive
insertion sort is O(n). It occurs in the case when the input
is already/almost sorted.
a) O(n)
b) O(n log n)
c) O(n2)
d) O(log n)
View Answer
Answer: c
a) n
b) 1
c) n * log n
d) log n
View Answer
Answer: d
11. What will be the base case for the code of recursive
insertion sort ?
a)
if(n < 1)
return;
b)
if(n == 0)
return;
c)
if(n <= 1)
return;
d)
If(n == 2)
return;
View Answer
Answer: c
a) O(n)
b) O(1)
c) O(n log n)
d) O(n2)
View Answer
Answer: b
b) merge sort
c) heap sort
d) selection sort
View Answer
Answer: a
b) merge sort
c) radix sort
d) counting sort
View Answer
Answer: a
a)
if (n <= 1)
return;
int j = n-2;
arr[j+1] = arr[j];
j--;
arr[j+1] = key;
b)
if (n < 1)
return;
int j = n-2;
arr[j+1] = arr[j];
j--;
arr[j] = key;
}
c)
if (n <1)
return;
int j = n-2;
arr[j+1] = arr[j];
j--;
arr[j] = key;
d)
{
if (n <= 1)
return;
int j = n-1;
arr[j+1] = arr[j];
j--;
arr[j+1] = key;
View Answer
Answer: a
c) it is easy to implement
View Answer
Answer: d
a) stupid sort
b) ship sort
c) sinking sort
d) shell sort
View Answer
Answer: c
a) T(n) = 2T(n/2) + n
b) T(n) = 2T(n/2) + c
c) T(n) = T(n-1) + n
d) T(n) = T(n-1) + c
View Answer
Answer: c
a) Selection sort
b) Quick sort
c) Bubble sort
d) Heap sort
View Answer
Answer: c
a) selection sort
c) cocktail sort
d) stupid sort
View Answer
Answer: b
a) true
b) false
View Answer
Answer: a
a) O(n)
b) O(n log n)
c) O(n2)
d) O(log n)
View Answer
Answer: c
Explanation: The overall recurrence relation of recursive
bubble sort is given by T(n) = T(n-1) + n. It is found to be
equal to O(n2).
a) O(n)
b) O(n log n)
c) O(n2)
d) O(log n)
View Answer
Answer: a
a) O(n)
b) O(n log n)
c) O(n2)
d) O(log n)
View Answer
Answer: c
a) 0
b) 1
c) 2
d) 3
View Answer
Answer: d
11. What will be the base case for the code of recursive
bubble sort?
a)
if(n < 1)
return;
b)
if(n == 0)
return;
c)
if(n == 1)
return;
d)
If(n == 2)
return;
View Answer
Answer: c
a) O(n)
b) O(1)
c) O(n log n)
d) O(n2)
View Answer
Answer: b
a) true
b) false
View Answer
Answer: a
b) merge sort
c) radix sort
d) counting sort
View Answer
Answer: a
a)
if (n == 1)
return;
swap(arr[i], arr[i+1]);
rec_bubbleSort(arr, n-1);
b)
if (n == 2)
return;
swap(arr[i], arr[i+1]);
rec_bubbleSort(arr, n-1);
c)
if (n == 1)
return;
swap(arr[i], arr[i+1]);
rec_bubbleSort(arr, n-1);
d)
if (n == 2)
return;
swap(arr[i], arr[i+1]);
rec_bubbleSort(arr, n-1);
View Answer
Answer: a
View Answer
Answer: c
a) Factorial of a number
c) Length of a string
Answer: d
a) Switch Case
b) Loop
c) If-else
d) if elif else
View Answer
Answer: b
a) Best case
b) Worst case
c) Base case
View Answer
Answer: c
Explanation: For recursion to end at some point, there
always has to be a condition for which the function will not
call itself. This condition is known as base case.
void my_recursive_function()
my_recursive_function();
int main()
my_recursive_function();
return 0;
d) The code will run for some time and stop when the
stack overflows
View Answer
Answer: d
Explanation: Every function call is stored in the stack
memory. In this case, there is no terminating
condition(base case). So, my_recursive_function() will be
called continuously till the stack overflows and there is no
more space to store the function calls. At this point of time,
the program will stop abruptly.
void my_recursive_function(int n)
if(n == 0)
return;
printf("%d ",n);
my_recursive_function(n-1);
int main()
my_recursive_function(10);
return 0;
a) 10
b) 1
c) 10 9 8 … 1 0
d) 10 9 8 … 1
View Answer
Answer: d
void my_recursive_function(int n)
if(n == 0)
return;
printf("%d ",n);
my_recursive_function(n-1);
int main()
my_recursive_function(10);
return 0;
a) return
b) printf(“%d “, n)
c) if(n == 0)
d) my_recursive_function(n-1)
View Answer
Answer: c
Explanation: For the base case, the recursive function is
not called. So, “if(n == 0)” is the base case.
void my_recursive_function(int n)
if(n == 0)
return;
printf("%d ",n);
my_recursive_function(n-1);
int main()
my_recursive_function(10);
return 0;
a) 9
b) 10
c) 11
d) 12
View Answer
Answer: c
void my_recursive_function(int n)
if(n == 0)
return;
my_recursive_function(n-1);
printf("%d ",n);
int main()
my_recursive_function(10);
return 0;
View Answer
Answer: c
View Answer
Answer: b
int cnt=0;
void my_recursive_function(int n)
if(n == 0)
return;
cnt++;
my_recursive_function(n/10);
int main()
my_recursive_function(123456789);
printf("%d",cnt);
return 0;
}
a) 123456789
b) 10
c) 0
d) 9
View Answer
Answer: d
void my_recursive_function(int n)
if(n == 0)
printf("False");
return;
if(n == 1)
printf("True");
return;
if(n%2==0)
my_recursive_function(n/2);
else
printf("False");
return;
int main()
my_recursive_function(100);
return 0;
a) True
b) False
View Answer
Answer: b
int cnt = 0;
if(s[i] == '\0')
return;
cnt++;
my_recursive_function(s,i+1);
int main()
my_recursive_function("thisisrecursion",0);
printf("%d",cnt);
return 0;
a) 6
b) 9
c) 5
d) 10
View Answer
Answer: a
{
if(idx == len)
printf("-1");
return ;
if(arr[idx] == val)
printf("%d",idx);
return;
my_recursive_function(arr,val,idx+1,len);
int main()
int value = 2;
return 0;
a) 3
b) 4
c) 5
d) 6
View Answer
Answer: b
a) Queue
b) Stack
c) Tree
d) Linked list
View Answer
Answer: a
b) Array
c) Queue
d) Tree
View Answer
Answer: c
c) Ordered array
d) Linear tree
View Answer
Answer: a
a) Ring Buffer
b) Square Buffer
c) Rectangle Buffer
d) Curve Buffer
View Answer
Answer: a
a) ABCD
b) DCBA
c) DCAB
d) ABDC
View Answer
Answer: a
a) Queue
b) Circular queue
c) Dequeue
d) Priority queue
View Answer
Answer: c
a) Rear = MAX_SIZE – 1
c) Front = rear + 1
d) Rear = front
View Answer
Answer: a
a) Simulation of recursion
View Answer
Answer: c
a) Ordinary queue
c) Circular queue
d) Priority queue
View Answer
Answer: b
a) Create
b) Push
c) Evaluation
d) Pop
View Answer
Answer: b
a) Create
b) Push
c) Evaluation
d) Pop
View Answer
Answer: d
a) Underflow
b) Empty collection
c) Overflow
d) Garbage Collection
View Answer
Answer: a
a) Overflow
b) Crash
c) Underflow
d) User flow
View Answer
Answer: a
View Answer
Answer: d
View Answer
Answer: d
a) 1
b) 2
c) 3
d) 4 or more
View Answer
Answer: c
Explanation: In the entire parenthesis balancing method
when the incoming token is a left parenthesis it is pushed
into stack. A right parenthesis makes pop operation to
delete the elements in stack till we get left parenthesis as
top most element. 3 elements are there in stack before
right parentheses comes. Therefore, maximum number of
elements in stack at run time is 3.
a) 1
b) 2
c) 3
d) 4 or more
View Answer
Answer: b
a) 1
b) 40
c) 74
d) -18
View Answer
Answer: d
a) 1
b) 2
c) 3
d) 4
View Answer
Answer: d
b) AB + CD* E – F **G /
c) AB + CD* E – *F *G /
d) AB + CDE * – * F *G /
View Answer
Answer: c
(AB+(*(C*D- E)*F )/ G)
(AB+CD*E-*F) / G
a) Stack
b) Queue
c) Array
d) Tree
View Answer
Answer: a
a) Linked List
b) Stack
c) Queue
d) Tree
View Answer
Answer: b
a) Heap
b) Binary Tree
c) Array
d) Stack
View Answer
Answer: d
a) *AB/CD+
b) AB*CD/+
c) A*BC+/D
d) ABCD+/*
View Answer
Answer: b
AB*+(C/D)
a) Branch
b) Tree
c) Queue
d) Stack
View Answer
Answer: d
a) -/*^ACBDE
b) -ABCD*^DE
c) -A/B*C^DE
d) -A/BC*^DE
View Answer
Answer: c
(-A/B)(C*D^E)
a) X
b) X+S
c) S
d) XS
View Answer
Answer: a
a) + pq – *rt
b) – +pqr * t
c) – +pq * rt
d) – + * pqrt
View Answer
Answer: c
(+pq)-(r*t)
(-+pq)(r*t)
a) Queue
b) Stack
c) Array
d) List
View Answer
Answer: b
a) 600
b) 350
c) 650
d) 588
View Answer
Answer: b
(5*(10))*(4+3)
= 50*7
= 350.
(A + B ⋀D)/(E – F)+G
a) (A B D ⋀ + E F – / G +)
b) (A B D +⋀ E F – / G +)
c) (A B D ⋀ + E F/- G +)
d) (A B D E F + ⋀ / – G +)
View Answer
Answer: a
(A B D ^ + ) / (E – F) +G
a) xyz*+pq*r+s*+
b) xyz*+pq*r+s+*
c) xyz+pq*r+s+
d) xyzp+*qr+s+
View Answer
Answer: a
View Answer
Answer: c
Push(1);
Pop();
Push(2);
Push(3);
Pop();
Push(4);
Pop();
Pop();
Push(5);
After the completion of all operation, the number of
elements present in stack is?
a) 1
b) 2
c) 3
d) 4
View Answer
Answer: a
a) Reversing a string
c) Implementation of recursion
d) Job scheduling
View Answer
Answer: d
a) Infix Expression
b) Prefix Expression
c) Postfix Expression
View Answer
Answer: c
a) abc X+ def ^^ –
b) abc X+ de^f^ –
c) ab+c Xd – e ^f^
d) -+aXbc^ ^def
View Answer
Answer: b
a) ABCD
b) DCBA
c) DCAB
d) ABDC
View Answer
Answer: b
View Answer
Answer: b
a) rear++
b) (rear+1) % CAPACITY
c) (rear % CAPACITY)+1
d) rear–
View Answer
Answer: b
a) overflow
b) underflow
View Answer
Answer: a
a) O(logn)
b) O(nlogn)
c) O(n)
d) O(1)
View Answer
Answer: d
if(isEmpty())
return -999;
else
Object high;
high = q[front];
return high;
a) Dequeue
b) Enqueue
View Answer
Answer: c
b) easier computations
View Answer
Answer: a
a)
if(count == 0)
{
System.out.println("Queue underflow");
return 0;
else
q[front] = null;
front = (front+1)%CAPACITY;
count--;
return ele;
b)
if(count == 0)
System.out.println("Queue underflow");
return 0;
else
{
Object ele = q[front];
front = (front+1)%CAPACITY;
q[front] = null;
count--;
return ele;
c)
if(count == 0)
System.out.println("Queue underflow");
return 0;
else
front = (front+1)%CAPACITY;
q[front] = null;
count--;
return ele;
}
}
d)
if(count == 0)
System.out.println("Queue underflow");
return 0;
else
q[front] = null;
front = (front+1)%CAPACITY;
return ele;
count--;
View Answer
Answer: a
a)
newQ[i-front] = Q[i%CAPACITY];
Q = newQ;
front = 0;
rear = size()-1;
b)
newQ[i-front] = Q[i%CAPACITY];
Q = newQ;
c)
newQ[i-front] = Q[i];
Q = newQ;
front = 0;
rear = size()-1;
d)
newQ[i-front] = Q[i%CAPACITY];
Q = newQ;
View Answer
Answer: a
a) O(n)
b) O(nlogn)
c) O(logn)
d) O(1)
View Answer
Answer: a
Explanation: Because there are n elements.
int count = 0;
public CircularQueue()
this(CAPACITY);
size = n;
front = 0;
rear = 0;
q = new Object[size];
if(count == size)
System.out.println("Queue overflow");
return;
else
q[rear] = item;
rear = (rear+1)%size;
count++;
if(count == 0)
System.out.println("Queue underflow");
return 0;
else
q[front] = null;
front = (front+1)%size;
count--;
return ele;
if(count == 0)
return -999;
else
Object high;
high = q[front];
return high;
if(count == 0)
return -999;
else
Object low;
rear = (rear-1)%size;
low = q[rear];
rear = (rear+1)%size;
return low;
Object var;
myQ.enqueue(10);
myQ.enqueue(3);
var = myQ.rearElement();
myQ.dequeue();
myQ.enqueue(6);
var = mQ.frontElement();
System.out.println(var+" "+var);
a) 3 3
b) 3 6
c) 6 6
d) 10 6
View Answer
Answer: a
b) Segmentation
c) Paging
View Answer
Answer: a
c) LRU replacement
View Answer
Answer: a
b) FIFO
View Answer
Answer: b
a) True
b) False
View Answer
Answer: a
c) FIFO
View Answer
Answer: b
b) Frame allocation
c) Reduction in multiprogramming
d) Reduced optimality
View Answer
Answer: c
a) Page number
c) Memory capacity
d) Segment number
View Answer
Answer: b
a) Oldest page
b) Newest page
View Answer
Answer: a
Explanation: In FIFO page replacement algorithm, when a
page is to be replaced, the oldest page is chosen and
replaced at the tail of the queue.
a) True
b) False
View Answer
Answer: b
a) Linux
b) Mac
c) Windows
d) VAX/VMS
View Answer
Answer: d
a) k/k+1
b) k+1
c) k(k+1)
d) k/(k-h+1)
View Answer
Answer: d
View Answer
Answer: a
a) 12
b) 16
c) 14
d) 15
View Answer
Answer: d
first-in-first-out-algorithm-fifo-questions-answers-q13
a) 12
b) 16
c) 10
d) 14
View Answer
Answer: c
first-in-first-out-algorithm-fifo-questions-answers-q14
15. ___ states that, on a page fault, the frame that has
been in memory the longest is replaced.
a) Belady’s anomaly
b) Second chance algorithm
View Answer
Answer: a
View Answer
Answer: a
View Answer
Answer: c
a) Physical size
b) Capacity
c) Logical size
d) Random size
View Answer
Answer: c
a) Set
b) Map
c) HashMap
d) List
View Answer
Answer: d
View Answer
Answer: a
b) Geometric Array
d) Sparse Array
View Answer
Answer: c
Explanation: The first part stores the items of the dynamic
array and the second part is reserved for new allocations.
a) Locality of reference
c) Random access
d) Memory leak
View Answer
Answer: d
a) O(1)
b) O(n)
c) O(logn)
d) O(nlogn)
View Answer
Answer: b
a) True
b) False
View Answer
Answer: a
a) 30
b) 40
c) 10
d) 20
View Answer
Answer: a
b) False
View Answer
Answer: b
View Answer
Answer: d
a) 1
b) 1.5
c) 2
d) 0
View Answer
Answer: b
a) O (n)
b) O (n1/2)
c) O (log n)
d) O (1)
View Answer
Answer: a
a) Bit array
b) Dynamic arrays
c) Sparse arrays
d) Parallel arrays
View Answer
Answer: b
View Answer
Answer: a
Explanation: Auxiliary memory is required for storing the
data temporarily.
View Answer
Answer: c
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
a)
int min;
min = j;
min = k;
arr[min] = arr[j];
arr[j] = temp;
b)
int min;
min = j;
{
if(arr[k] < arr[min])
min = k;
arr[min] = arr[j];
arr[j] = temp;
c)
int min;
min = j;
min = k;
arr[min] = arr[j];
arr[j] = temp;
d)
int min;
min = j;
min = k;
arr[min] = arr[j];
arr[j] = temp;
View Answer
Answer: a
b) It is scalable
View Answer
Answer: a
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
b) It is not scalable
View Answer
Answer: b
Explanation: As the input size increases, the performance
of selection sort decreases.
a) 5 and 4
b) 4 and 5
c) 2 and 4
d) 2 and 5
View Answer
Answer: a
a) 5 and 4
b) 1 and 4
c) 0 and 4
d) 4 and 1
View Answer
Answer: d
Explanation: Selection sort is insensitive to input, hence
4(n-1) iterations. Whereas bubble sort iterates only once
to set the flag to 0 as the input is already sorted.
a) O(nlogn)
b) O(logn)
c) O(n)
d) O(n2)
View Answer
Answer: d
a) 5
b) 7
c) 9
d) 0
View Answer
Answer: d
a) group sort
b) radix sort
c) bin sort
d) uniform sort
View Answer
Answer: c
a) counting sort
c) bucket sort
d) pigeonhole sort
View Answer
Answer: c
b) It is a distribution sort
View Answer
Answer: d
c) distribution of input
d) input values
View Answer
Answer: d
View Answer
Answer: b
b) Pigeonhole sort
c) Counting sort
View Answer
Answer: b
a) O(n + k)
b) O(n.k)
c) O(n2)
d) O(n log n)
View Answer
Answer: c
a) O(n + k)
b) O(n.k)
c) O(n2)
d) O(n log n)
View Answer
Answer: a
a) bucket sort
b) counting sort
c) merge sort
d) pigeonhole sort
View Answer
Answer: a
a) True
b) False
View Answer
Answer: b
a) O(n + k)
b) O(n.k)
c) O(n2)
d) O(n log n)
View Answer
Answer: b
a) Fibonacci heap
b) Binary tree
c) Priority queue
d) FIFO
View Answer
Answer: c
a) O(N)
b) O(N log N)
c) O(log N)
d) O(N2)
View Answer
Answer: a
a) true
b) false
View Answer
Answer: b
heapsort-questions-answers-q4
a) 26,53,41,97,58,59,31
b) 26,31,41,53,58,59,97
c) 26,41,53,97,31,58,59
d) 97,53,59,26,41,58,31
View Answer
Answer: d
a) 0
b) 1
c) -1
View Answer
Answer: a
Explanation: The array for heap sort contains data at
position 0 whereas for a binary heap, array begins at 1.
This is the reason for its complexity.
c) tree inorder
d) tree preorder
View Answer
Answer: b
a) O(N)
b) O(N log N)
c) O(log N)
d) O(N2)
View Answer
Answer: b
a) 1
b) 2
c) 3
d) 4
View Answer
Answer: b
a) O(N)
b) O(N log N)
c) O(log N)
d) O(N2)
View Answer
Answer: c
a) true
b) false
View Answer
Answer: a
a) N log N-O(N)
d) 2N log N + O(N)
View Answer
Answer: d
a) O(N)
b) O(N log N)
c) O(log N)
d) O(N2)
View Answer
Answer: a
a) 2N log N-O(N)
d) 2N log N-O(log N)
View Answer
Answer: c
a) insertion sort
b) selection sort
c) bubble sort
d) merge sort
View Answer
Answer: b
View Answer
Answer: c
data-structures-questions-answers-heapsort-q3
a) 4
b) 5
c) 8
d) 9
View Answer
Answer: d
data-structures-questions-answers-heapsort-q3-exp
a) A[Parent(i)] = A[i]
View Answer
Answer: c
a) O(nlogn)
b) O(n2logn)
c) O(n2)
d) O(n3)
View Answer
Answer: a
a) True
b) False
View Answer
Answer: b
#include <stdio.h>
largest = l;
largest = r;
if (largest != i)
swap(arr[i], arr[largest]);
heapify(arr, n, largest);
heapify(arr, n, i);
X;
heapify(arr, i, 0);
printf(“\n”);
int main()
int n = sizeof(arr)/sizeof(arr[0]);
heapSort(arr, n);
printArray(arr, n);
a) swap(arr[0], arr[n])
b) swap(arr[i], arr[n])
c) swap(arr[0], arr[i])
d) swap(arr[i], arr[2*i])
View Answer
Answer: c
a) Comb sort
b) Smooth sort
d) Shell sort
View Answer
Answer: b
View Answer
Answer: a
a) O(1)
b) O(n/2)
c) O(logn/log(logn))
d) O(logn)
View Answer
Answer: c
for k = logn/log(logn),
= O(logn)