Chapter 18 covers recursion, and Chapter 19 discusses binary search trees |
|
Section 18.1 - Recursion What is meant by the "depth of recursion"? What is the difference between direct recursion and indirect recursion?
|
Section 18.2-18.6 - Recursive algorithms: factorials,
gcd, Fibonacci, linked list operations, binary search No questions here really.... just a comment. The important aspect of these sections is for you to become familiar with solving problems using recursion, rather than the specifics of these problems. Try Programming Challenge 18.5 "Recursive Multiplication" on page 1162 of our textbook. Write a function (on paper, you don't have to do it in Visual C++ if you don't want to) to multiplication recursively. Try Programming Challenge 18.8 "Ackerman's Function" also on page 1162 of our textbook.
|
Section 18.7 - Quicksort Can you describe the two important steps in Quicksort: partition and the recursive calls to quicksort? Yes, this is a yes or no question.
|
Section 18.11 - Recursion vs. Iteration Why is a solution that uses iteration generally faster than a recursive solution?
|
|
Section 19.1 - Binary trees Define:
What advantage does a Binary Search Tree have over linked lists or arrays in searching for data?
|
Section 19.2 - Binary tree operations In what circumstances is the deletion or removal of a binary search tree node most difficult. Why? Complete problems 19.16 - 19.19 on page 1187 in our textbook.
|