Midterm 1 Review

Tom Kelliher, CS23

Mar. 13, 1996

I have not finalized the form of the midterm yet, but I am leaning towards five questions. Two of those would be programming problems. Recall that my nominal midterm form is seven questions, two of which are programming problems.

Feel free to email me questions. I will post answers to the cs23 mailing alias on keystone. Here is the alias:

cs23:		kelliher, burgerec, burtykcl, carillsl, coffmadw, gallaghe,
		kimeae, peterskp, pooleda, skarots, stallbsm, thomasmm,
		wilburan, yonekmm
If your name is missing, please let me know.

I consider the following material to be important:

  1. Two components to every program: data structures and algorithms.

  2. The old paradigm: modular programming. The new paradigm: object oriented programming. Advantages, disadvantages, comparison.

  3. Abstract data types. What are they?

  4. The seven aspects of the software life cycle. A good solution is one which minimizes the cost over all applicable phases of the life cycle.

  5. Pre- and post-conditions. Loop invariants. (You should expect to see one of these on the exam.)

  6. No questions on Unix.

  7. The stack model of program execution. Activation records and their contents. Box traces. The four memory segments associated with a program.

  8. Recursion. Recursion versus iteration, with respect to efficiency.

  9. Linked Lists. Operations; implementation.

  10. Classes. Private and public access. Member variables and member methods (functions). Declaration ( .h file) and definition ( .cc file).

  11. Constructors, destructors, inline methods. new, delete, pointers, and dynamic memory allocation. Overloaded methods, default initializers.

  12. The topics covered in class on March 11 will not appear on the midterm.

Thomas P. Kelliher
Mon Mar 11 21:19:27 EST 1996
Tom Kelliher