JAVA DATA STRUCTURES EXAM
QUESTIONS AND ANSWERS
In Java, all arguments are passed to methods by value, except for objects and arrays. -
Correct Answers -True
Every Java class is a subclass of either another Java class or the Object class. -
Correct Answers -True
Java allows programmers to perform operations on reference values - Correct Answers
-False
In Java, multiple class inheritance is possible since a new subclass can directly inherit
the attributes (i.e. data and methods) of more than one class, including the Object class.
- Correct Answers -False
Files in Java can grow in size as needed, whereas arrays have a fixed size. - Correct
Answers -True
Which of the following is a precondition for a method that accepts a number n and
computes the nth Fibonacci number? - Correct Answers -n is a positive integer
When you solve a problem by solving two or more smaller problems, each of the
smaller problems must be ______ the base case than the original problem. - Correct
Answers -either farther from or the same "distance" from
A recursive binary search algorithm always reduces the problem size by half at each
recursive call. - Correct Answers -True
A recursive solution can have more than one base case. - Correct Answers -True
Typically, a directly recursive method requires a while or for loop. - Correct Answers -
True
A recursive method always calls itself. - Correct Answers -False
What is the effect of the following recursive Java method, assuming that N is a positive
integer?
, public static int Mystery (int N)
{
if (N > 0)
return 1 + Mystery(N / 10);
else
return 0;
} - Correct Answers -It computes the number of decimal digits in N
In the box trace for a recursive method, a new box (i.e. activation record) is created
each time: - Correct Answers -the method is called
Consider the following Java program. What is output by the program?
public static void main( void )
{
int a, b, result;
a = 3;
b = 4;
result = value( a, b );
System.out.printf("%d\n",result);
}
public static int value( int x, int n )
{
if ( n > 0 )
return x * value( x, n - 1 );
else
return 1;
} - Correct Answers -81
During the specification phase of the life cycle of software, the programmer should
indicate what enhancements to the program are likely in the future. - Correct Answers -
True
QUESTIONS AND ANSWERS
In Java, all arguments are passed to methods by value, except for objects and arrays. -
Correct Answers -True
Every Java class is a subclass of either another Java class or the Object class. -
Correct Answers -True
Java allows programmers to perform operations on reference values - Correct Answers
-False
In Java, multiple class inheritance is possible since a new subclass can directly inherit
the attributes (i.e. data and methods) of more than one class, including the Object class.
- Correct Answers -False
Files in Java can grow in size as needed, whereas arrays have a fixed size. - Correct
Answers -True
Which of the following is a precondition for a method that accepts a number n and
computes the nth Fibonacci number? - Correct Answers -n is a positive integer
When you solve a problem by solving two or more smaller problems, each of the
smaller problems must be ______ the base case than the original problem. - Correct
Answers -either farther from or the same "distance" from
A recursive binary search algorithm always reduces the problem size by half at each
recursive call. - Correct Answers -True
A recursive solution can have more than one base case. - Correct Answers -True
Typically, a directly recursive method requires a while or for loop. - Correct Answers -
True
A recursive method always calls itself. - Correct Answers -False
What is the effect of the following recursive Java method, assuming that N is a positive
integer?
, public static int Mystery (int N)
{
if (N > 0)
return 1 + Mystery(N / 10);
else
return 0;
} - Correct Answers -It computes the number of decimal digits in N
In the box trace for a recursive method, a new box (i.e. activation record) is created
each time: - Correct Answers -the method is called
Consider the following Java program. What is output by the program?
public static void main( void )
{
int a, b, result;
a = 3;
b = 4;
result = value( a, b );
System.out.printf("%d\n",result);
}
public static int value( int x, int n )
{
if ( n > 0 )
return x * value( x, n - 1 );
else
return 1;
} - Correct Answers -81
During the specification phase of the life cycle of software, the programmer should
indicate what enhancements to the program are likely in the future. - Correct Answers -
True