CSC207: Introduction to Algorithms 4 credits (30-10-0)

Objectives

This course introduces the student to algorithms and algorithmic thinking.

Contents

Assorted general-purpose algorithms on simple data types and data structures (sets, arrays, records, text files); search and sorting algorithms (e.g. on arrays). Computability and computational complexity. Introduction to algorithm analysis. Intuitive presentation of data organisation: Common data structures (arrays, lists, stacks, queues, trees and graphs); types and user-defined types; pointers and dynamic data structures. Files and simple file system organisation: sequential, indexed, hashed, bit-mapped. Database structures: mention database types (parallel, temporal, distributed, etc), data models (relational, hierarchical, object-oriented, etc.), novel types/models (e.g., data warehousing.)