1

### GATE CSE 2015 Set 2

Consider two decision problems ${Q_1},{Q_2}$ such that ${Q_1}$ reduces in polynomial time to $3$-$SAT$ and $3$-$SAT$ reduces in polynomial time to ${Q_2}.$ Then which one of the following is consistent with the above statement?
A
${Q_1}$ is $NP,$ ${Q_2}$ is $NP$ hard.
B
${Q_2}$ is $NP,$ ${Q_1}$ is $NP$ hard.
C
Both ${Q_1}$ and ${Q_2}$ are in $NP.$
D
Both ${Q_1}$ and ${Q_2}$ are $NP$ hard.
2

### GATE CSE 2015 Set 2

Given below are some algorithms, and some algorithm design paradigms.

GROUP 1 GROUP 2
1. Dijkstra's Shortest Path i. Divide and Conquer
2. Floyd-Warshall algorithm to compute
all pairs shortest path
ii. Dynamic Programming
3. Binary search on a sorted array iii. Greedy design
4. Backtracking search on a graph iv. Depth-first search

Match the above algorithms on the left to the corresponding design paradigm they follow.

A
$1 - i,\,\,2 - iii,\,\,3 - i,\,\,4 - v.$
B
$1 - iii,\,\,2 - iii,\,\,3 - i,\,\,4 - v.$
C
$1 - iii,\,\,2 - ii,\,\,3 - i,\,\,4 - iv.$
D
$1 - iii,\,\,2 - ii,\,\,3 - i,\,\,4 - v.$
3
Numerical

### GATE CSE 2015 Set 2

A Young tableau is a $2D$ array of integers increasing from left to right and from top to bottom. Any unfilled entries are marked with $\infty ,$ and hence there cannot be any entry to the right of, or below a $\infty .$ The following Young tableau consists of unique entries.

1 2 5 14
3 4 6 23
10 12 18 25
31

When an element is removed from a Young tableau, other elements should be moved into its place so that the resulting table is still a Young tableau (unfilled entries may be filled in with a $\infty$). The minimum number of entries (other than $1$) to be shifted, to remove $1$ from the given Young tableau is ______________.

4

### GATE CSE 2015 Set 2

Suppose you are provided with the following function declaration in the C programming language.
int partition(int a[], int n);
The function treats the first element of a[ ] as a pivot and rearranges the array so that all elements less than or equal to the pivot is in the left part of the array, and all elements greater than the pivot is in the right part. In addition, it moves the pivot so that the pivot is the last element of the left part. The return value is the number of elements in the left part. The following partially given function in the C programming language is used to find the kth smallest element in an array a[ ] of size n using the partition function. We assume k≤n.
int kth_smallest (int a[], int n, int k)
{
int left_end = partition (a, n);
if (left_end+1==k) {
return a[left_end];
}
if (left_end+1 > k) {
return kth_smallest (___________);
} else {
return kth_smallest (___________);
}
}
The missing arguments lists are respectively
A
(a, left_end, k) and (a + left_end + 1, n - left_end - 1, k - left_end - 1)
B
(a, left_end, k) and (a, n - left_end - 1, k - left_end-1)
C
(a + left_end + 1, n - left_end - 1, k - left_end - 1) and (a, left_end, k)
D
(a, n - left_end - 1, k - left_end - 1) and (a, left_end, k)

### Paper Analysis of GATE CSE 2015 Set 2

Subject NameTotal Questions
Algorithms5
Compiler Design3
Computer Networks6
Computer Organization4
Data Structures3
Database Management System4
Digital Logic3
Discrete Mathematics12
Operating Systems4
Programming Languages3
Software Engineering3
Theory of Computation4
Web Technologies1