SOLUTIONS MANUAL
gf
Data Structures and Algorithms in Java,
gf gf gf gf gf gf
6th Edition Goodrich, Tamassia
gf gf gf gf
(All Chapters 1 to 15)
gf gf gf gf
,Table of contents
gf gf
1. Chapter 1: Java Primer
gf gf gf
2. Chapter 2: Object-Oriented Design
gf gf gf
3. Chapter 3: Fundamental Data Structures
gf gf gf gf
4. Chapter 4: Algorithm Analysis
gf gf gf
5. Chapter 5: Recursion
gf gf
6. Chapter 6: Stacks, Queues, and Deques
gf gf gf gf gf
7. Chapter 7: List and Iterator ADTs
gf gf gf gf gf
8. Chapter 8: Trees
gf gf
9. Chapter 9: Priority Queues
gf gf gf
10. Chapter 10: Maps, Hash Tables, and Skip Lists
gf gf gf gf gf gf gf
11. Chapter 11: Search Trees
gf gf gf
12. Chapter 12: Sorting and Selection
gf gf gf gf
13. Chapter 13: Text Processing
gf gf gf
14. Chapter 14: Graph Algorithms
gf gf gf
15. Chapter 15: Memory Management and B-Trees
gf gf gf gf gf
gf
, Chapter
1 Java Primer gf
Hints and Solutions gf gf
Reinforcement
R-
1.1) Hint Use the code templates provided in the Simple Input an
gf gf gf gf gf gf g f gf gf gf gf
d Output section.
gf gf
R-1.2) Hint You may read about cloning in Section 3.6.
gf gf gf gf gf gf gf gf gf
R-
1.2) Solution Since, after the clone, A[4] and B[4] are both pointing to th
gf gf gf gf gf gf gf gf gf gf gf gf gf
e same GameEntry object, B[4].score is now 550.
gf gf gf gf gf gf gf
R-1.3) Hint The modulus operator could be useful here.
gf gf gf gf gf gf gf gf
R-1.3) Solution gf
public boolean isMultiple(long n, long m) {
gf gf gf gf gf gf
return (n%m == 0); gf gf gf
}
R-1.4) Hint Use bit operations.
gf gf gf gf
R-1.4) Solution gf
public boolean isEven(int i) {
gf gf gf gf
return (i & 1 == 0); gf gf gf gf gf
}
R-
1.5) Hint The easy solution uses a loop, but there is also a formula for t
gf gf gf gf gf gf gf gf gf gf gf gf gf gf gf
his, which is discussed in Chapter 4.
gf gf gf gf gf gf
R-1.5) Solution gf
public int sumToN(int n) {
gf gf gf gf
int total = 0;
gf gf gf
for (int j=1; j <= n; j++) total +=
gf gf gf gf gf gf gf gf gf
j;
return total; gf
}
,
gf
Data Structures and Algorithms in Java,
gf gf gf gf gf gf
6th Edition Goodrich, Tamassia
gf gf gf gf
(All Chapters 1 to 15)
gf gf gf gf
,Table of contents
gf gf
1. Chapter 1: Java Primer
gf gf gf
2. Chapter 2: Object-Oriented Design
gf gf gf
3. Chapter 3: Fundamental Data Structures
gf gf gf gf
4. Chapter 4: Algorithm Analysis
gf gf gf
5. Chapter 5: Recursion
gf gf
6. Chapter 6: Stacks, Queues, and Deques
gf gf gf gf gf
7. Chapter 7: List and Iterator ADTs
gf gf gf gf gf
8. Chapter 8: Trees
gf gf
9. Chapter 9: Priority Queues
gf gf gf
10. Chapter 10: Maps, Hash Tables, and Skip Lists
gf gf gf gf gf gf gf
11. Chapter 11: Search Trees
gf gf gf
12. Chapter 12: Sorting and Selection
gf gf gf gf
13. Chapter 13: Text Processing
gf gf gf
14. Chapter 14: Graph Algorithms
gf gf gf
15. Chapter 15: Memory Management and B-Trees
gf gf gf gf gf
gf
, Chapter
1 Java Primer gf
Hints and Solutions gf gf
Reinforcement
R-
1.1) Hint Use the code templates provided in the Simple Input an
gf gf gf gf gf gf g f gf gf gf gf
d Output section.
gf gf
R-1.2) Hint You may read about cloning in Section 3.6.
gf gf gf gf gf gf gf gf gf
R-
1.2) Solution Since, after the clone, A[4] and B[4] are both pointing to th
gf gf gf gf gf gf gf gf gf gf gf gf gf
e same GameEntry object, B[4].score is now 550.
gf gf gf gf gf gf gf
R-1.3) Hint The modulus operator could be useful here.
gf gf gf gf gf gf gf gf
R-1.3) Solution gf
public boolean isMultiple(long n, long m) {
gf gf gf gf gf gf
return (n%m == 0); gf gf gf
}
R-1.4) Hint Use bit operations.
gf gf gf gf
R-1.4) Solution gf
public boolean isEven(int i) {
gf gf gf gf
return (i & 1 == 0); gf gf gf gf gf
}
R-
1.5) Hint The easy solution uses a loop, but there is also a formula for t
gf gf gf gf gf gf gf gf gf gf gf gf gf gf gf
his, which is discussed in Chapter 4.
gf gf gf gf gf gf
R-1.5) Solution gf
public int sumToN(int n) {
gf gf gf gf
int total = 0;
gf gf gf
for (int j=1; j <= n; j++) total +=
gf gf gf gf gf gf gf gf gf
j;
return total; gf
}
,