Go upUp to Theodore Norvell's Courses page

Engr 4892 Data Structures. Assignments and Tests.

Assignments and Tests
Readings and Related Links

Quiz solutions

  • Solution to quiz 0 (PDF).
  • Solution to quiz 1 (PDF).

Lab Exams

  • The lab exam (ZIP)
  • The other lab exam (ZIP)

Practice questions for exams and quizzes

Assignments and solutions

Assignment 4 (PDF)

  • Files for assignment 4 (ZIP)

Assignment 3 (PDF)

  • Files for quicksort: quicksort.zip
    • IMPORTANT NOTE. In the interests of relieving the tension between style and speed, I'm making a slight change to this part of the assignment.
      • Submit two files. quicksort.cpp and optimizedQuicksort.cpp. One is for style and correctness, one is for speed and correctness, both must be correct. I'm providing you a copy of optimizedQuicksort.cpp. Altering optimizedQuicksort.cpp is optional.
      • quicksort.cpp will be marked for style and used for the majority of tests. It should contain function "void quicksort(Node*&)" and any functions that that function calls.
      • optimizedQuicksort.cpp will not be marked for style. It will be used for the last test, which is a test of speed. It should contain function "void optimizedQuicksort(Node*&)" and any functions that that function calls. Alternatively you can just leave this file alone, in which case your "void quicksort(Node*&)" will be used for the last test. You must submit this file even if you don't alter it.
      • Note, however, that you must pass all tests for this part of the assignment. This means that "void optimizedQuicksort(Node*&)" must be able to handle very large lists. I therefore encourage you not to use recursion to do the partitioning, at least in implementing the optimized code, or for any other routines that must traverse very long lists.
  • Files for query.query.zip (NOTE: I get a couple of weird warning messages about missing delete functions. Please ignore. I think this is actually an error on the part of the compiler. If I solve this problem, I'll post a new set of of files.)

Assignment 2 (PDF)

Assignment 1 (PDF)

  • NOTE: Files were updated Thursday May 20th at around 3:30. I added test code and some utility routines which you may find useful
  • Files for bignum (ZIP)
  • A calculator application using your code (calc.cpp)
  • My solution (BigNum.cpp)

Assignment 0 (PDF)

  • Correction: The prototype for merge should be
    void merge( List<List<char *> > inLists, List<char *> &outList, bool &success ) ;
  • Files for runlen (ZIP)
  • Files for merge (ZIP)
  • Solutions:

This page was generated by PerlInHTML.