Introduction to Computer Science 2: Algorithms and Application
Professor | Dr K Darcy Otto |
Title | Introduction to CS 2: Algorithms and Application |
Code | CS 4xxx |
Credits | 4 |
Term | Spring 2025 |
Times | TBD |
Location | TBD |
Delivery | Fully in-person |
Contact | |
Office Hours | TBD |
Embark on a deeper exploration of computer science, where the focus shifts from programming and foundations of computer science, to the intricacies of algorithms and their real-world applications. This course reinforces and builds upon the concepts introduced in Introduction to CS 1, and provides an introduction to algorithm design, data analysis, and the practical application of computational techniques.
You will learn not only how to explore possible solutions using computational thinking, but also how to analyze and understand the data that drives these solutions. You will explore a selection of topics such as dynamic programming, stochastic modelling, statistical inference, and machine learning. These techniques will provide you with some tools to make sense of the vast amounts of data often encountered in computing tasks.
This course does not simply aim to expand your technical skill set. It seeks to cultivate a critical mindset that questions, analyzes, and interprets data, so that you can make informed inference and decisions. It invites those who are intrigued by the power of algorithms to engage computation in diverse contexts, setting the stage for advanced study in science, the arts, and beyond.
This course follows from Introduction to Computer Science 1: Programming and Computer Science.
Prerequisites: Introduction to Computer Science 1: Programming and Computer Science, or permission of the instructor.
Topics include: Python programming, complexity theory, discrete structures, recursion, object-oriented programming, testing and debugging
Evaluation will be based on active engagement, projects, and a comprehensive final examination.