CS286 -- Lab 2: Sorting |
|
Objectives Addressed
PurposeThis lab assignment is designed to provide insight into the implementation of various sorting algorithms and generic algorithms. AssignmentYou should implement three generic sorting algorithms (they should have the same interface as the generic sort algorithm). You should implement InsertionSort, QuickSort, and a hybrid sort that uses QuickSort on any partition with more than 20 elements and InsertionSort for partitions with 20 or fewer elements. One algorithm should require only bi-directional iterators while the others may require random access iterators. The sorting algorithms should work on any container (with the appropriate iterators available) containing any type of object for which the less than operator is defined. In addition, you should write a test program that sorts the words in words.txt. The program should compare all of your sorting algorithms as well as the generic sort algorithm and the list's sort algorithm (be sure to fix it first) by exercising all of them. You may find the benchmark class useful in your comparisons. Lab report (due 11:00pm, the day prior to week 6 lab)Each pair should submit one lab report. Your report should include:
Template Lab ReportAs with any report you submit, correct spelling and grammar are required. In addition, your report should be submitted electronically following the Electronic Submission Guidelines. (You may wish to consult the sample report before submitting your report.) Be sure to keep copies of all your files, in case something gets lost. It may be wise to keep a diskette backup as well. If you have any questions, consult the instructor. |
© 2001-2003 Dr. Christopher C. Taylor | Office: CC-27C | Phone: 277-7339 | Last Updated: Mon Mar 31 08:13:06 2003 |
I am responsible for all content posted on these pages; MSOE is welcome to share these opinions but may not want to. |