|
The primary objective of this course is to provide the student with an advanced treatment of computer programming with an emphasis on design and implementation of abstract data structures. The coding language is C++. At the completion of the course, students will be capable of writing complex applications using structured programming methods. |
|
Main Text Mark Weiss (2000) Data Structures and Algorithms using C++ (Second Edition) Addison Wesley Longman.
Bruno R. Preiss (2002) Data Structures and Algorithms With Object Oriented-Design Patterns in C++; John Wiley & Sons, Inc.
Deitel & Deitel (2003) C++: How to Program (Fourth Edition); Prentice Hall
(Second Edition); Addison Wesley Longman.
Edition); John Wiley & Sons, Inc. |
| Dates to Bear in Mind:
· Tuesday June 22 : Class Test 1 · Monday June 28 : Programming Assignment 1 due date · Tuesday July 13 : Class Test 2 · Friday July 16 : Programming Assignment 2 due date |
|
SCHEDULE |
|||||
|
Lecture |
Tutorial/Labs |
||||
|
Day |
Time |
Room |
Day |
Time |
Room |
|
Monday
|
7 - 9 |
LR2 |
|||
|
Tuesday
|
7 - 9 |
LR4 |
Wednesday |
5 - 7 |
ML1 |
|
Thursday |
4 - 6 |
LR2 |
|
|
|
Course Outline
Review of C++ Programming Concepts Program Structure Functions Variable Data Types struct, enum, union Pointers Vectors Template Classes and Data Abstraction Function Overloading
:Abstract Data Types Lists (Singly and Doubly Linked) Queues Stacks Deques Priority Queues Binary Heaps Dictionaries BST AVL Trees Splay Trees B-Trees Sets Disjoint Sets Forest Path Compression Weighted Unions Trees Binary Trees, Binary Search Trees, Tree Traversal Algorithms.
Indices Hash tables Hash functions Collision resolution
Sorting Internal sorting techniques. Shell sort Quicksort Heap sort
Graphs Search techniques e.g. sequential, binary. Scatter storage techniques Collision resolution |
|
Grading, Final Paper And Course Work
|
| Area of Testing | Percent of Grade |
| Final Paper | 60 |
|
Two Class Tests: Class Test #1 Class Test #2 |
10 10 |
|
Two Programming Assignments: Program #1 Program #2 |
10 10 |
|
Programming Assignment Marking Scheme
|
| Area of Testing | Percent of Score |
| Use of Structures | 30 |
| Functional Decomposition | 30 |
| Documentation | 20 |
| Effective use of White Spaces | 5 |
| Execution | 15 |
|
Assignment Policy: All assignments will be due by 9 p.m. on the given day. All work must be done by the individual student unless otherwise indicated. At NO time and under NO circumstances will late submissions be accepted.
|