Data Structures and Algorithms in Java
6th Edition
By Michael Goodrich, Roberto Tamassia
All Chapters 1 to 15 Covered
, Table of Contents
Chapter 1: Jaṿa Primer
Chapter 2: Object-Oriented Design
Chapter 3: Fundamental Data Structures
Chapter 4: Algorithm Analysis
Chapter 5: Recursion
Chapter 6: Stacks, Queues, and Deques
Chapter 7: List and Iterator ADTs
Chapter 8: Trees
Chapter 9: Priority Queues
Chapter 10: Maps, Hash Tables, and Skip Lists
Chapter 11: Search Trees
Chapter 12: Sorting and Selection
Chapter 13: Text Processing
Chapter 14: Graph Algorithms
Chapter 15: Memory Management and B-Trees
, Chapter
1 Jaṿa Primer
Hints and Solutions
Reinforcement
R-1.1) Hint Use the code templates proṿided in the
Simple Input and Output section.
R-1.2) Hint You may read about cloning in Section 3.6.
R-1.2) Solution Since, after the clone, A[4] and B[4] are
both pointing to the same GameEntry object, B[4].score is
now 550.
R-1.3) Hint The modulus operator could be useful here.
R-1.3) Solution
public boolean isMultiple(long n, long m) {
return (n%m == 0);
}
R-1.4) Hint Use bit operations.
R-1.4) Solution
public boolean isEṿen(int i) {
return (i & 1 == 0);
}
R-1.5) Hint The easy solution uses a loop, but there is
also a formula for this, which is discussed in Chapter 4.
R-1.5) Solution
public int sumToN(int n) {
int total = 0;
for (int j=1; j <= n;
j++)total += j;
return total;
}
, 2 Chapter 1. Jaṿa Primer
R-1.6) Hint The easy thing to do is to write a loop.
R-1.6) Solution
public int sumOdd(int n) {
int total = 0;
for (int j=1; j <= n; j +=
2)total += j;
return total;
}
R-1.7) Hint The easy thing to do is to write a loop.
R-1.7) Solution
public int sumSquares(int n) {
int total = 0;
for (int j=1; j <= n;
j++)total += j∗j;
return total;
}
R-1.8) Hint You might use a switch statement.
R-1.8) Solution
public int numṾowels(String text) {
int total = 0;
for (int j=0; j < text.length(); j++) {
switch (text.charAt(j)) {
case 'a':
case 'A':
case 'e':
case 'E':
case 'i':
case 'I':
case 'o':
case 'O':
case 'u':
case 'U':
total +=
1;
}
}
return total;
}
R-1.9) Hint Consider each character one at a time.