Go to settings and hit privacy to change who can see your posts
Answer:
You can simplify the problem down by recognizing that you just need to keep track of the integers you've seen in array that your given. You also need to account for edge cases for when the array is empty or the value you get would be greater than your max allowed value. Finally, you need to ensure O(n) complexity, you can't keep looping for every value you come across. This is where the boolean array comes in handy. See below -
public static int solution(int[] A)
{
int min = 1;
int max = 100000;
boolean[] vals = new boolean[max+1];
if(A.length == 0)
return min;
//mark the vals array with the integers we have seen in the A[]
for(int i = 0; i < A.length; i++)
{
if(A[i] < max + 1)
vals[A[i]] = true;
}
//start at our min val and loop until we come across a value we have not seen in A[]
for (int i = 1; i < max; i++)
{
if(vals[i] && min == i)
min++;
else if(!vals[i])
break;
}
if(min > max)
return max;
return min;
}
Answer:
An interpreter is quite different from a complier due to the following statement below:
O. An interpreter translates and executes code line by line, while a compiler translates all code at once so that it is ready to be executed at any time.
Explanation:
For an interpreter, it works in translating and execution of the codes line after another line. In a situation where there is a mistake in the code, the next line would not be able to be executed, but rather display error message. On the other hand, compiler translate all codes at once and execute them as a single work.
<em>During its translation of the codes in compiler, should there be any error, it would not be able to execute despite the fact that, the error might be in the last line of the code.</em>
Answer:
for (int h = k; h >= 0; h--)
Explanation:
From the list of given options, option C answers the question.
In the outer loop
Initially, k = 0
In the inner loop,
h = k = 0
The value of h will be printed once because h>=0 means 0>=0 and this implies once
To the outer loop
k = 1
The inner loop will always assume value of k;
So,
h = 1
This will be printed twice because of the condition h>=0 means 1>=0.
Since 1 and 0 are >=0; 1 will be printed twice
To the outer loop
k = 2
The inner loop
h = 2
This will be printed thrice because of the condition h>=0 means 2>=0.
Since 2, 1 and 0 are >=0; 2 will be printed thrice
To the outer loop
k = 3
The inner loop
h = 3
This will be printed four times because of the condition h>=0 means 3>=0.
Since 3, 2, 1 and 0 are >=0; 3 will be printed four times