Al Buraimi University College Academic Year: 2009-2010/Semester 1 COMP182/L DATA STRUCTURES AND PROGRAM DESIGN Instructor Contact Information Faculty Name : Ms. Raghad Moufaq Al-Khattab Faculty College Address : Office: 1st floor Phone: Extension 291 Year/Semester : 2009-2010/ Semester 1 Office hours : morning: 12:30-02:00,(Sun, Tues) Evening: 6-7(Sat, Mon, Wed)+6-7(Mon, Wed) Course Information Module Title : Advanced Data Structures Module Code : COMP282/L Prerequisite : COMP182 /L Credits :3 Teaching Method : 2 Hours of Lecture + 1 Hour Tutorial Course Objectives: Survey of the components of ADT ; Big-oh running time estimation; Implementing the Circular linked list; Using of doubly linked list; Logical and physical representation of data; Multi-way tree representation; data structure operations, matrix representations with stack and Queue.; sorting techniques, searching techniques with Binary trees; Solve problems by using Heap and Heap sort methods Syllabus: 1. Introduction Concepts : Algorithms, Data structures, and Data type Algorithm efficiency : Big-O notation 2. Data Abstraction and Structure The String ADT (Fixed - length implementation and string ADT) The Pointer ADT and applications The Linked list operations (creating, adding, deleting, and searching) 3. Linked Lists : Operation and Implementation Linked Lists ADT Circular linked list Doubly linked list Implementing stack with CLL Comparisons of Ordered Array and Linked list with binary search Linked List Structure ( Dummy Headers, Linear Linked List, Double Linked Lists, Circular Linked Lists, General Linked Lists) Ordered List Implementation and Efficiency Consideration Unordered List Implementation and Efficiency Consideration 4. Stacks and Queues and Josephus’s Problem The Stack Abstract Data Type The Queues Abstract Data Type Implementations of Stacks and Queues, Stack with linked list Circular Queues Implementation Multiple Slack and Queues Evaluation of Expressions and Parsing. Infix. Postfix and Prefix notation, Converting Infix to Postfix, Evaluating Postfix 5. Trees Binary Trees( Binary 'Trees AD T .implementation of Binary 'Tree Traversal) Binary Search Trees Balanced binary tree Threaded Trees General Trees Multi-way binary trees Inserting, deleting in multi-way trees rotation to the left and rotation to the right in a binary trees 6. Heap and Heap Sort Basic Concepts of heap and graphs. The graph ADT. The Network ADT. Implementation of Graph and Network An Rules of heap sort Adding and deleting in heap Searching with heap Implementation of heap and heap sort with c++ 7. Huffman nodes How is this course organized? Course Study Plan No Description Timing(Weeks ) 1 Introduction: Concepts : Algorithms, Data 1 Week structures, and Data type 2 Algorithm efficiency : Big-O notation 1 Week 3 The String ADT (Fixed - length implementation 1 Week and string ADT) 4 The Pointer ADT and applications 1 Week 5 The Linked list operations (creating, adding, 1 Week deleting, and searching) 6 Circular linked list, Doubly linked list, 1 Week Implementing stack with CLL 7 First test 1 Week 8 Binary Trees( Binary 'Trees AD T .implementation 3 Weeks of Binary 'Tree Traversal), Binary Search Trees, Balanced binary tree, rotation to the left and rotation to the right in a binary trees 9 Multi-way binary trees, Inserting, 1 Week 10 deleting in multi-way trees 1 Week 8 Second Test 1 Week 9 Basic Concepts of heap and graphs. The graph 1 weeks ADT. 10 Huffman nodes 1 Week 11 Final Exam 1 Week 16 Weeks Assessment and grading Assessment Methods : Test1 (20%), Test (20%), Final Exam (50%), Others (10%) Assessment Criteria: The final grade in the course will be determined by the following scale of percentages Mark 95- 90- 85- 80- 75- 70- 65- 60- 55- 50- 0- Range 100 94 89 84 79 74 69 64 59 54 49 Grade Points 4 3.7 3.3 3 2.7 2.3 2 1.7 1.3 1 0 Grade A A- B+ B B- C+ C C- D+ D F Textbooks, Supplementary Materials Text Books : C++ Plus Data Structures, Nell Dale, 1998. Jones and Parlett. Data Structures and Program Design in C++ Robert Kruse / C.L. Todno, Bruce Leung. Third Edition. Recommended Text : Data Structures and Program Design in C++ Robert Kruse / C.L. Todno, Bruce Leung. Third Edition.