-
Consider the following C-function in which a[n] and b[m] are two sorted integer arrays and c[n + m] be another array. void xyz (int a [], int b [], int c [])
{
int i, j, k;
i = j = k = 0;
while ((i < n) && (j < m))
if (a [i] < b [j] c [k++] = a[i++];
else c[k++] = b[j++];
}
Which of the following conditions hold(s) after the termination of the while loop ?
(i) j < m, k = n + j – 1 and a [n – 1] < b[j], if i = n
(ii) i < n, k = m + i – 1 and b [m – 1] ≤ a[i], if j = m
-
- only (i)
- only (ii)
- either (i) or (ii) but not both
- neither (i) nor (ii)
- only (i)
Correct Option: C
The condition (i) is true if the last inserted element in c[] is from a[] and condition (ii) is true if the last inserted element is from b[].