Close Menu

COMP4620

Course Title: 
Programming Principles
Credits: 
3
Core Course: 
yes
Course Aims: 

This course introduces the basic foundational concepts in programming primarily applicable to data science. The student will be provided with hands-on experience applying several techniques and data structures to retrieve and manage data and assess the performance implications based on the structures and techniques applied.

Learning Outcomes: 

On successful completion of this course, a student should be able to:

  1. Discuss the various types of data structures suitable for representing different data;

  2. Analyze the performance implications of using different structure to manage data;

  3. Implement algorithms and data structures to organize and prepare data for analysis;

  4. Develop solutions to collect, retrieve and prepare data for different types of analysis;

Syllabus: 
  1. Basic programming constructs: data types, expressions, sequence, iteration, recursion, conditionals

  2. Data structures and representations (eg. lists, trees, dictionaries, data frames, graphs)

  3. Sorting and Searching

  4. Performance measurements (space and time complexity)

Course Assessment: 

The course will be assessed by coursework that will have three (3) components and a final examination. The assignments should allow students to demonstrate that the specific learning outcomes have been achieved.

Coursework                 (60%)

  •  1 Project.               20%
  • Assignment.           15%
  • 5 Labs (5% each).  25%

Final Examination.       40%

Projects and labs will focus on learning outcomes 3 and 4, while the assignment will focus on LOs 1 and 2.

Students will be required to pass both the coursework and the final examination to pass the course.

Top of Page