# CMPSCI 311: Theory of Algorithms

### David Mix Barrington

### Fall, 2003

Here are questions and answers on HW#4, due 17 October 2003.
Questions are in black, answers in blue.

#### Question 5, 16 October 2003

In 5.2.3, should we assume that the graph in question is undirected,
since in section 5.2 all the graphs are undirected?

Yes.

#### Question 4, 16 October 2003

In 5.1.2, it's easy to solve this problem by a loop instead of
recursion, is this ok?

No, the point of the problem is to use the decrease-by-one form to
solve the problem. You must give an algorithm for the n-element case
that makes a recursive call on the same algorithm for the (n-1)-element
case, and uses this answer to find its own answer. Then analyze the
algorithm using a recurrence of the form "T(n) = T(n-1) + f(n)", with
the appropriate f(n) and an appropriate base case.

#### Question 3, 16 October 2003

In 5.1.1, can one of the boys operate the boat by himself?

Yes, if not it would be easy to prove that the problem is insoluble.
The boat may contain one boy, both boys, or one soldier.

#### Question 2, 16 October 2003

For 4.6.9, in the text he talks about S2 as being to the left
of the line from Pmax to Pn, but in figure 4.8 these points are shown
to the right of that line. Is this a typo?

No, the line *from* Pmax *to* Pn is heading southeast on
the page, so *its* left is to the northeast of it, as is shown
on the figure correctly.

#### Question 1, 16 October 2003

In 4.5.7, may we use ordinary matrix multiplication to multiply
the two-by-twos by each other?

Yes, this is what Levitin means by stopping the recursion at n=2.

Last modified 16 October 2003