Syllabus


 * Course Outline **

1. Introduction 2. Programming Strategies 3. Arrays 4. Asymptotic Analysis (big-O notation) 5. Lists a) Singly link lists b) Doubly link lists c) Circular link lists ** 1st Midterm **

6. Stacks and its applications 7. Queues a) Simple queues b) Priority queues c) Circular queues 8. Recursion a) Linear recursion b) Binary recursion

9. Trees and tree traversal 10. Huffman Encoding 11. Searching a) Sequential search b) Binary search c) Tree search d) Hashing 12. Sorting a) Bubble sort b) Insertion sort c) Selection sort d) Quick sort e) Heap sort f) Shell sort g) Merge sort h) Radix sort

** 2nd Midterm ** 13. General n-array trees 14. Balanced Binary trees a) B-trees b) Red-Black trees c) AVL trees
 * Final Exam **