COMP2247 - Algorithms and Data Structures

Syllabus Software Installation Assignments Tests
Lectures and Labs
Review COMP2243 Materials ArrayList OOP - Aggregation OOP - Inheritance OOP - Polymorphism OOP - Abstract Method/Class Interface Exception Handling Recursion Sorting and Searching Algorithms Algorithm Analysis Generics Java Collections Linked Lists Stacks Queues Binary Search Trees Heaps and Priority Queues



Lectures and Labs


In each class meeting, we start with the lectures to cover the related concepts and theories.

Then we move on to the hands-on labs to enhance the knowledge through the programming exercises.

Participating the lab exercises is required and it will help students greatly to complete the homework assignments.

During the lab exercises, students can collaborate but individual works are expected.

Weekly Schedule



Course Contents

Topics Book Chapter
Review of COMP2243 Materials Chapter 1, 2, 3, 4, 5, 6, 7, 8, 9, and 12
ArrayLists Chapter 7
OOP - Aggregation Chapter 8
OOP - Inheritance Chapter 10
OOP - Polymorphism Chapter 10
Abstract Method / Class Chapter 10
Interface Chapter 10
Exception Handling Chapter 11
Recursion Chapter 15
Sorting and Searching Algorithms Chapter 16
Algorithm Analysis Chapter 16
Generics Chapter 17
Java Collections*** Chapter 18
Linked Lists Chapter 19
Stacks Chapter 20
Queues Chapter 20
Binary Search Trees Chapter 21
Heaps and Priority Queues Chapter 21
   
***Additional Topics in Java Collections***  
Iterators, Dictionary, Hashing Chapter 18