## Algorithm Design Techniques

COMP-360              Assignment 2           Due: Beginning of class, Thurs Oct 4

Late assignments  -10% per day, including weekends.
Please give late assignments to Perouz (T.A) in McConnell 232
If you work closely with someone else, indicate the person's name(s) on your homework.
The final write-up of each assignment must, however, be your own work.

1.  Text, P. 313,  problem 2.

2.  Text, P. 330, problem 22.

3. Consider the Bellman-Ford algorithm Push-Based-Shortest-Path on pages 298-9, modified so that the outer loop is also executed for i=n.

Claim: G has a negative cyle if and only if there is some change in the array M on the n-th iteration.
For each case below, either prove the claim or give a counterexample using a graph of the given type.

(a) In G there is a vertex v such that v is connected to every other vertex by a directed path.
(b) In G there is a vertex v such that for each other vertex w there is a directed path from v to w and from w to v.

If you find a counterexample, give the array M after each iteration and state the order in which you consider vertices.
______________________________________________________________________________________________________________________________

4. Write a one page (at most 400 words) critical review of the economist articles on algorithms
(here and here).
Are there are inaccuracies in the article? Do you find it convincing? Anything else you think should have been included? etc.

Note: You must prove the correctness of your algorithms, and analyze their running times.
Carefully review the proofs of similar results in the text first!