Suggested Assignments

1. Replace collection.h and collection.c with new files that implement collection as an array that contains the actual integers currently in the collection as its entries.

2. a. One of the two complete programs of Section 3.9.3 implements the configuration for the perfect shuffle as an array and the other implements it as a list. They do not treat the configuration as a data abstraction; write and run a single source file program that does.

b. Rewrite and run the program developed for (a) using file modularization to hide the details of the configuration's implementation and so that separate compilation can be done.

3. Change the stack implementation of Section 5.5 so that it is implemented as in Section 4.5.1. You can change only the files stack.h and stack.c; the program file, towerstest.c, cannot be changed.

4. Modify the implementation of the stack data abstraction in Section 5.5 so that instead of the stack containing records, it contains pointers to the records. Again, this should be achieved with changes only to stack.h and stack.c.