Log in
Sign up for FREE
arrow_back
Library

Semester Final Review

star
star
star
star
star
Last updated about 2 years ago
54 questions
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
Question 1
1.

Question 2
2.

Question 3
3.

Question 4
4.

Question 5
5.

Question 6
6.

Question 7
7.

Question 8
8.

Question 9
9.

Question 10
10.

Question 11
11.

Question 12
12.

Question 13
13.

Question 14
14.

Question 15
15.

Question 16
16.

Question 17
17.

Question 18
18.

Question 19
19.

Question 20
20.

Question 21
21.

Question 22
22.

Question 23
23.

Question 24
24.

Question 25
25.

Question 26
26.

Question 27
27.

Question 28
28.

Question 29
29.

Question 30
30.

Question 31
31.

Question 32
32.

Question 33
33.

Question 34
34.

Question 35
35.

Question 36
36.

Question 37
37.

Question 38
38.

Question 39
39.

Question 40
40.

Question 41
41.

Question 42
42.

Question 43
43.

Question 44
44.

Question 45
45.

Question 46
46.

Question 47
47.

Question 48
48.

Question 49
49.

Question 50
50.

Question 51
51.

Question 52
52.

Question 53
53.

Question 54
54.

Consider the following method below.
public static double check(int[] vals)
{
double[] amounts = {.15,.2,.5,.01};
if(amounts.length != vals.length){
return 0.0;
}
double total = 0.0;
for(int i = 0; i < vals.length; i++)
{
total += vals[i] * amounts[i];
}
return total;
}
What will the method check() return if passed the array {7, 3, 5, 4}?
19
4.19
0.86
0.0
4.15
Consider the following method below.
public static double check(int[] vals)
{
double[] amounts = {.15,.2,.5,.01};
if(amounts.length != vals.length){
return 0.0;
}
double total = 0.0;
for(int i = 0; i < vals.length; i++)
{
total += vals[i] * amounts[i];
}
return total;
}
What will the method check() return if passed the array {7, 5, 4}?
0.86
4.15
19
4.19
0.0
Which of the following swaps elements 0 and 1 in array?
int[] array = {7,8,10,11,4,3};

I.
array[0] = array[1];
array[1] = array[0];

II.
int save = array[0];
array[0] = array[1];
array[1] = save;

III.
array[0]+= array[1];
array[1] = array[0]+array[1];
array[0]-= array[1];
II only
I, II, and II
I and II only
I only
II and III only
What is output by the code below?
int[] array = {33,14,37,11,27};
System.out.println( array[ 6 - 3 ] );
14
There is no output due to a runtime error.
33
There is no output due to a syntax error.
11
What is output by the code below?
int[] array = {7,8,10,11,4,3};
Arrays.sort( array );
System.out.println(array[2]);
7
3
4
11
8
What is output by the code below?
int[] nums = new int[10];
for (int i=0; i<nums.length; i++)
{
nums[i] = i*3;
}
System.out.println(nums[6]);
18
24
27
15
21
What is output by the code below?
int[] array = {7,8,10,11,4,3};
array[array[0]/2]=15;
array[array[4]-4]=9;
array[array.length/2-1]=5;
array[1]=array[0]+4;
System.out.println(array[0]);
9
15
7
11
5
Which of the following correctly fill /* blank */ in method isIt() ?
//method isIt should return true if all of the numbers
//in array are in increasing ( ascending ) order
public static boolean isIt(int[] array)
{
for(int spot=0; spot<array.length-1; spot++)
{
/* blank */
return false;
}
return true;
}
if( array > array+1 )
if( array[spot-1] > array[spot] )
if( spot > spot+1)
if( array[spot] > array[spot+1] )
if( array[spot] < array[spot+1] )
What is output by the following code?
int[] array = {1,2,3,4,0};
int aplus = array[array[array[array[0]]]];
System.out.println( aplus );
1
3
2
0
4
Consider the following instance variable and incomplete method.
The method getBiggest should return the largest value in tRay.

private int[] tRay; //assume the tRay contains values
public int getBiggest()
{
int big = Integer.MIN_VALUE;

/* blank */

return big;
}

Which of the following code segments shown below could be used to replace
/* blank */ so that getBiggest will work as intended?

I. for( int i=0; i<tRay.length; i++ )
if( tRay[i] > big )
big = tRay[i];

II. for( int item : tRay )
if( tRay[item] > big )
big = tRay[item];

III. for( int item : tRay )
if( item > big )
big = item;
II and III only
I only
II only
I and II only
I and III only
What is output by the code below?
int[] array = {7,8,10,11,4,3};
array[array[0]/2]=15;
array[array[4]+1]=9;
array[array.length/2-1]=5;
array[1]=array[0]+4;
out.println(array[5]);
11
15
7
9
5
What is output by the code below?
String s = "apluscompsci.com";
String words[] = new String[ s.length() ];
for (int b = s.length()-1; b>=0 ;b--)
words[b] = s.substring(b);
Arrays.sort(words);
System.out.println(words[2].length());
9
2
6
7
5
What is output by the code below?
String[] ray = "10 22 5 33 11 4 222".split(" ");
Arrays.sort( ray );
int x = Integer.parseInt( ray[0] );
int r = Integer.parseInt( ray[1] );
x += r;
System.out.println( x );
19
32
9
33
21
What is output by the code below?

Integer[] ray;
ray = new Integer[4];
System.out.println( ray[3] );
1
2
3
null
0
Consider the following class definitions below to determine the output of the provided code segments.
public class Cat
{
private String name;
private int age;
public Cat( String n, int a )
//implementation not shown
public String getName()
//implementation not shown
public int getAge()
//implementation not shown

//other methods not shown
}
//client code in another class
Cat[] bunch = new Cat[5];
bunch[4] = new Cat("wile", 5);
System.out.println( bunch[4].getAge() );
0
5
15
6
null
What is output by the code below?

String[] ray;
ray = new String[5];
ray[1] = "one";
ray[2] = "two";
ray[3] = "three";
ray[0] = ray[2];
ray[2] = null;
System.out.println( ray[4].length() );
null
3
2
There is no output due to a runtime exception.
1
Consider the following class definitions.
public class Cat
{
private String name;
private int age;

public String getName()
//implementation not shown
public int getAge()
//implementation not shown

//constructors and other methods not shown
}
public class CatBarn
{
private Cat[] kitties; //assume kitties has stuff in it

//returns the average age of all of the kitties
public double averageAge( ){
/* blank */
}
//constructors and other methods not shown
}
Which of the following code segments shown below could be used to replace
/* blank */ so that method averageAge() will work as intended?
I.
int cnt = 0;
double sum = 0;
for( Cat c : kitties )
{
sum += c.getAge();
cnt = cnt + 1;
}
return sum / cnt;

II.
int cnt = 0;
double sum = 0;
for( Cat c : kitties )
{
sum = sum + c;
cnt += 1;
}
return sum / cnt;

III.
double sum = 0;
for( int i = 0; i < kitties.length; i++ )
sum += kitties[i].getAge();
return sum / kitties.length;
I and III only
III only
I only
I and II only
II only
Consider the following instance variable and incomplete method.
The method getBiggies should return a new ArrayList
that contains all values in list that are larger than val.

private List<Double> list; //assume list contains values

public List<Double> getBiggies( double val)
{
ArrayList<Double> bigs = new ArrayList<Double>();

/* blank */

return bigs;
}

Which of the following code segments shown below could be used to replace
/* blank */ so that getBiggies will work as intended?

I. for ( int i = 0; i < list.size(); i++)
if( list.get(i) > val )
bigs.add(i);
II. for ( int i = 0; i < list.size(); i++)
if( list.get(i) > val )
bigs.add(val);
III. for ( int i = 0; i < list.size(); i++)
if( list.get(i) > val )
bigs.add(list.get(i));
IV. for ( double item : list )
if( item > val )
bigs.add(item);
II only
II and III only
III only
I only
III and IV only
What is output by the code below?
Double[] ray = {3.1,5.2,6.3,1.4};
for( double r : ray )
r = 0;
System.out.println( ray[2] );
5.2
0.0
3.1
6.3
1.4
Consider the code below.

<blank>[] ray = {12,55,-988,9.6,0};
for( <blank> dog : ray )
System.out.println( dog );
Which of the following could fill <blank> ?
B. Integer
C and D
A. int
C. double
D. Double
What do you call the condition that stops recursion?
break
return
base case
stop
shut it down
Consider the following method.
public static int myst(int i)
{
if(i<=0)
return 0;
if(i<=3)
return i;
return myst(i-2)+myst(i-1);
}
What is returned by the call myst(5)?
13
4
8
5
3
What is returned by the call ben(51) ?
public static String ben(int x)
{
if( x / 5 <= 0 )
return "" + x % 5;
else
return "" + ( x % 5 ) + ben( x / 5 );
}
21
102
101
202
201
Consider the following method.
public static int alice(int m, int n)
{
if(m < 3)
return n;
return alice(n-2, m-1);
}
What value does of alice(11, 12) return?
2
3
11
12
7
What is returned the call fun(6) ?
public static int fun(int x)
{
if(x < 1)
return 1;
else
return x + fun(x - 1);
}
37
11
22
29
16
What is returned by the call fun(8) ?
public static int fun(int x)
{
if(x < 1)
return 1;
else
return x + fun(x - 1);
}
29
16
22
11
37
What is returned by the call fun(8) ?
public static int fun(int x){
if(x < 1)
return 1;
else
return x + fun(x - 2);
}
26
21
17
31
13
What is returned by the call fun(6) ?
public static int fun(int x){
if(x < 1)
return 1;
else
return x + fun(x - 2);
}
13
21
26
17
31
What is returned by the call fun(1) ?
public static int fun(int x)
{
if(x < 1)
return 1;
else
return x - fun(x - 3);
}
25
0
22
12
8
What is returned by the call fun(10) ?
public static int fun(int x)
{
if (x < 1)
return x;
else
return x + fun(x - 2);
}
0
20
12
30
8
What is returned by the call wacky(5,5) ?
public static int wacky(int x, int y){
if(x <= 1)
return y;
else
return wacky(x - 1,y - 1) + y;
}
11
18
17
16
15
What is returned by the call wacky(4,6) ?
public static int wacky(int x, int y){
if(x <= 1)
return y;
else
return wacky(x - 1,y - 1) + y;
}
17
16
18
11
15
What is returned by the call wacky(2,6) ?
public static int wacky(int x, int y)
{
if(x <= 1)
return y;
else
return wacky(x - 1,y - 1) + y;
}
17
16
15
11
18
What is returned by the call funny(0) ?
public static int funny(int x)
{
if(x<1)
return 1;
else
return x + funny(x - 1) - funny(x - 2);
}
25
16
13
1
2
What is returned by the call go(2,6) ?
public static int go(int x, int y)
{
if(x <= 1)
return y;
else
return go(x - 1,y) + y;
}
16
21
12
11
8
What is returned by the call go(4,2) ?
public static int go(int x, int y)
{
if(x <= 1)
return y;
else
return go(x - 1,y) + y;
}
21
8
12
16
11
What is returned by the call fly(2) ?
public static int fly(int x)
{
if(x < 1)
return 1;
else
return x + fly(x - 3) - fly(x - 2);
}
25
17
2
4
8
What is returned by the call go(7,3)?
public static int go(int x, int y)
{
if(x <= 1)
return y;
else
return go(x - 1,y) + y;
}
4
21
16
8
14
Which of the following answer choices best describes the algorithmic purpose of method ben?
public static int ben(int[] ray, int i, int x)
{
if( i >= ray.length )
return 0;
if( ray[i] == x )
return 1 + ben( ray, i+1, x );
return 0 + ben( ray, i+1, x );
}
The method is counting the number of odd numbers in ray.
The method is counting the number of occurrences of x in ray.
The method is summing all of the numbers in ray.
The method is counting the number of numbers in ray.
The method is counting the number of even numbers in ray.
Which of the following answer choices best describes the algorithmic purpose of method ben?
public static int ben(int[] ray, int i)
{
if( i >= ray.length )
return 0;
if( ray[i] % 2 == 0 )
return 1 + ben( ray, i+1 );
return 0 + ben( ray, i+1 );
}
The method is averaging all of the numbers in ray.
The method is counting the number of numbers in ray.
The method is counting the number of even numbers in ray.
The method is counting the number of odd numbers in ray.
The method is counting the number of occurrences of x in ray.
Which of the following sorts has a partition method that uses a pivot location?
bubble sort
merge sort
selection sort
insertion sort
quick sort
What is the bigO of the code below?
int n = //user input
for(int i=0; i<n; i++){
for(int j=1; j<n; j=j*2){
System.out.println(i*j);
}
}
O(N)
O(1)
O(N * log2N)
O(Log2N)
O(N*N)
Which of the these algorithms has a O(1) best case runtime and a O(N) worst case runtime?
Binary Search
Linear Search
Selection Sort
Insertion Sort
Quick Sort
Which of the these algorithms has a O(N) best case runtime and a O(N*N) worst case runtime?
Binary Search
Linear Search
Selection Sort
Insertion Sort
Quick Sort
Which of the these algorithms has a O(N*Log2N) best case runtime and a O(N*N) worst case runtime?
Binary Search
Linear Search
Selection Sort
Insertion Sort
Quick Sort
Which of these is the correct BigO for searching a single linked linked-list?
O(N)
O(Log2N)
O(N * log2N)
O(1)
O(N2)
Which of the these algorithms has a O(N*N) best case runtime and a O(N*N) worst case runtime?
Binary Search
Linear Search
Selection Sort
Insertion Sort
Quick Sort
Which of the these algorithms has a O(1) best case runtime and a O(Log2N) worst case runtime?
Binary Search
Linear Search
Selection Sort
Insertion Sort
Quick Sort
Which of these is the correct BigO for adding an item to the front of an array?
O(N)
O(Log2N)
O(N * log2N)
O(1)
O(N*N)
Which of these is the correct BigO for adding an item to the end of an array?
O(N)
O(Log2N)
O(N * log2N)
O(1)
O(N*N)
Which of these is the correct BigO for adding an item to the front of a Java LinkedList?
O(N)
O(Log2N)
O(N * log2N)
O(1)
O(N*N)
Which of these is the correct BigO for deleting any item from an ArrayList?
O(N)
O(Log2N)
O(N * log2N)
O(1)
O(N*N)
Which of the following would correctly fill < blank 1 > ?
public static void sortOne( Comparable[] list )
{
for(int i=0; i<list.length-1; i++)
{
int min = i;
for(int j=i+1; j<list.length; j++)
{
if(list[j]. < blank 1 > (list[min])<0)
min = j;
}
if( min != i)
{
Comparable temp = list[min];
list[min] = list[i];
list[i] = temp;
}
}
}
compareTo
int
Comparable
String
Object
Assuming <blank 1> is filled correctly, what sort is sortOne()?
public static void sortOne( Comparable[] list )
{
for(int i=0; i<list.length-1; i++)
{
int min = i;
for(int j=i+1; j<list.length; j++)
{
if(list[j]. < blank 1 > (list[min])<0)
min = j;
}
if( min != i)
{
Comparable temp = list[min];
list[min] = list[i];
list[i] = temp;
}
}
}
bubble sort
selection sort
insertion sort
binary search
merge sort